Björn Eiderbäck Kort om grundläggande nätverkskoncept Internet Socketar
|
|
- Monica Isaksson
- för 6 år sedan
- Visningar:
Transkript
1 ,QWHUQHWSURJUDPPHULQJ (QNRUW,QWURGXNWLRQ Björn Eiderbäck Innehåll Kort om grundläggande nätverkskoncept Internet Socketar 5HIHUHQVHU +DUROG, Java Network Programming, Elliotte Harold +DOO, CORE Web Programming, Marty Hall 'HLWHO HWDO, Internet and the World Wide Web How to Program previous next 9DGlU,QWHUQHWSURJUDPPHULQJ Internetprogrammering är en hel massa olika saker Konstruktion av websidor, via HTML, XHTML, XML med CSS, JavaScript, applets, plugins mm Socketprogrammering TCP/IP, UDP, Konstruktion av epostprogram SMTP, POP3, IMAP Serverprogrammering Med ASP, Servlets, CGI, SOAP, mm Användning av streamade media ljud, video Konstruktion av distribuerade tillämpningar Med RMI (JAVA), CORBA, SOAP och andra system/protokoll Mobila enheter och trådlösa nät Servrar, routrar, brandväggar mm Iptelefoni Osv, osv previous next 2 %M UQ(LGHUElFN 1
2 3nGHQQDI UHOlVQLQJNRPPHUYLEDUDKLQQDPHG En bråkdel av allt det som togs upp på föregående sida Därför tar vi bara en kort historik och översikt (~första timmen) och fokuserar på socketprogrammering (~andra timmen) Som ju i viss mening är det fundament som alla andra andra Internetapplikationer vilar på Laborationen kommer dessutom bli en en enkel socketprogrammeringslab previous next 3 3URJUDPPHULQJDYQlWYHUNVDSSOLNDWLRQHU Varför nätverksapplikationer? Idag så ser vi ett allt större behov av applikationer som kan kommunicera mellan olika noder Ett exempel är WWW, och news med mer asynkron kommunikation Andra exempel är distribuerade databaser, ljud, radio och video Vi har också behov av att bygga tillämpningar där vi mer direkt är medvetna om varandra delade anslagstavlor, whiteboards, delade ordbehandlare, styrssystem (robotar mm) och inte minst spel För att åstadkomma detta finns det stöd i dagens nätverk (tex i Internet som vi skall titta lite mer på) previous next 4 %M UQ(LGHUElFN 2
3 3n,QWHUQHW Det finns massor av olika typer av siter Auktioner, reklam, vanliga köpordersiter, portaler med likartade siter samlade, affärer, musik, film, intressesiter, mjukvara, info, rapporter, böcker, sökmotorer, undervisning,... Olika typer av applikationer News Webbaserade Databaser Klient-server, peer-to-peer Fristående Telefon Video... previous next 5 1lWYHUN Ett QlWYHUN är en samling av datorer eller annan utrustning Termer QRG en maskin i nätverket (dator, skrivare, brygga, läskautomat, ) YlUG (eng. KRVW) noder som är fullt fungerande datorer kallas för värdar DGUHVV varje nod i nätverket har en unik adress i form av en serie av bytes SDNHW moderna nätverk är paket-baserade, dvs informationen bryts ner till och skickas som paket. Paketen hanteras därefter separat SURWRNROO en uppsättning regler som specificerar hur kommunikationen i nätverket skall gå till previous next 6 %M UQ(LGHUElFN 3
4 ,QWHUQHW Internet är det mest kända nätverket och idag det mest spridda Designat för att vara robust ) UVWDYHUVLRQHQNRQVWUXHUDWDY$53$HQ P\QGLJKHWLQRP86$V I UVYDU DOODGHVGn $53$1(7 VRPVHGHPHUD Yl[WHWLOO,QWHUQHW $53$1(7I UVWDYHUVLRQHQ'nPHGHWW InWDODQVOXWQDGDWRUHU previous next 7 /DJHUHQJOD\HU Ett nätverk har olika kommunikationslager Applikation (HTTP, FTP, Telnet, ) Transport (TCP, UDP, ) Nätverk (IP, ) Logisk förbindelse Fysiskt (Ethernet, FDDI, Local Talk, drivers, ) Applikation (HTTP, FTP, Telnet, ) Transport (TCP, UDP, ) Nätverk (IP, ) Som applikationsprogrammerare arbetar vi oftast i det övre lagret För speciella distribuerade tillämpningar arbetar vi också i Transportlagret Övriga lager behöver vi normalt inte bry oss om previous next 8 %M UQ(LGHUElFN 4
5 ,37&3RFK8'3 IP, Internet Protocol protokollet som används på nätverksnivå av Internet TCP, Transport Control Protocol ett anslutningsbaserat protokoll som erbjuder tillförlitligt datautbyte mellan två noder UDP, User Datagram Protocol ett protokoll som tillåter skickande av oberoende paket av data från en nod till en annan utan att varken garantera att paketen kommer fram eller ordningen mellan dem är samma vid mottagandet som vid utskickandet previous next 9,3DGUHVVRFK'16 Varje dator på Internet identifieras med ett fyra-bytes (dvs 32 bitars) tal Många datorer har fasta nummer andra tilldelas temporära vid anslutning (tex vid anslutning via modem hemifrån) 32 bitar räcker till 2 32 = adresser men det räcker ändå inte så det finns ett förslag, IPv6, med 128 bitars adresser, dvs = adresser (som ju bör räcka ett tag...fast inte riktigt till att adressera varje molekyl i universum...) DNS, Domain Name Server IP-adresser är svåra att komma ihåg för människor Därför konstruerades DNS som kan översätta mer lättihågkomna namn till IP-adresser Tex blir previous next 10 %M UQ(LGHUElFN 5
6 3RUWDU Varje dator med en IP-adress har ett antal logiska portar för att kommunicera med sin omgivning en port är ett 16-bitars tal, dvs ett tal mellan 0 och Vissa portar är reserverade portnummer mellan 0 och 1023 reserverade för speciella ändamål exempelvis är följande portnummer reserverade för viss service port 7 för eko port för ftp port 23 för telnet port 25 för smtp (dvs skicka e-post) port 80 för HTTP (dvs den port som normalt används av en WEB-server) port 110 för pop3 (dvs ett protokoll för att läsa e-post) Senare i kursen skall vi se hur vi själva kan skriva program som kommunicerar med både fördefinierade och via portar med andra nummer previous next 11,QWHUQHWRFK,QWUDQHW Internet är världens största IP-baserade nätverk Massor av olika typer av datorer från alla kontinenter är anslutna Varje dator har (eller får vid anslutning) en unik IPadress med vilken den sedan identifieras Det finns också andra nätverk med ungefär samma uppbyggnad Man brukar tala om intranet för att benämna lokala nätverk inom en organisation previous next 12 %M UQ(LGHUElFN 6
7 OLHQWVHUYHUPRGHOOHQ Idag är en NOLHQWVHUYHU (ibland NOLHQWEHWMlQW på svenska) PRGHOOHQ den förhärskande vid konstruktion av distribuerade, samarbetande tillämpningar en klient ber en server om en viss tjänst tex om att få reda på vad klockan är eller att skicka över en viss fil eller websida en server utför tjänster åt klienter tex svarar på vad klockan är, skickar över en fil eller websida från sitt lokala filsystem Alla typer av applikationer passar dock inte in i klient-server-modellen utan båda ändarna är både servrar och klienter samtidigt. Man brukar då prata om kommunikation SHHUWRSHHU exempel en delad riteditor spel eller (det klassiska exemplet) telefonförbindelse previous next 13 ) UDWWSURJUDPPHUD,QWHUQHWWLOOlPSQLQJDU Kan man använda socketar Om man enbart använder Java: RMI CORBA, för språk och maskinoberoende distribuerade tillämpningar SOAP mm, för att använda ett XML-baserat protokoll previous next 14 %M UQ(LGHUElFN 7
8 /;+70/0,0(RFK85/ HTTP, Hypertext Transfer Protocol standarden som beskriver hur en webklient och server kommunicerar och utbyter data HTML, Hypertext Markup Language standardspråket för konstruktion av WEB-sidor XHTML, EXtensible HyperText Markup Language HTML blandat med XML med slutna parenteser och syntax MIME, Multipurpose Internet Mail Extensions den öppna standarden som beskriver hur multimedia skall skickas via e-post URL, Uniform Resource Locator definierar hur en fil otvetydigt kan refereras på Internet previous next 15 85/85,RFK851 URI, Uniform Resource Identifier definierar hur en resurs otvetydigt kan refereras på Internet har undergrupperna URL och URN URL, Uniform Resource Locator refererar en adress på Internet ser ut så här: protokoll://värdnamn[:port]/väg/filnamn#avdelning exempel URN, Uniform Resource Name en pekare till en viss resurs utan att ange dess aktuella placering previous next 16 %M UQ(LGHUElFN 8
9 +70/RFK6*0/ HTML har sitt ursprung i SGML SGML skapades under tidigt 70-tal Man beskriver en texts semantik snarare än dess presentation HTML skapades under tidigt 90-tal Är lingua franca för att publicera hypertext på weben Har kommit i flera versioner och utvecklas forfranande Se gärna KWWSZZZZRUJ för mer information previous next HTTP, Hypertext Transport Protocol standarden som beskriver hur en webklient och server kommunicerar och utbyter data använder MIME för att avkoda data använder TCP/IP för dataöverföring klienten skickar ett meddelande i stil med GET /index.html HTTP/1.1 för att hämta WEBsidan index.html från aktuell server Se gärna KWWSZZZZRUJ3URWRFROV för mer information previous next 18 %M UQ(LGHUElFN 9
10 0,0( MIME, Multi Internet Mail Extension den öppna standarden som beskriver hur multimedia skall skickas via e-post anger typen för data som skickas, tex text plain html news postscript, pdf zip image jpeg, gif, tiff audio video mpeg quicktime previous next 19 &*, CGI, Common Gateway Interface Används av klienter för att kunna anropa program på servern CGI-program kan skrivas i många olika språk, tex Perl, C, BASIC eller AppleScript CGI-program körs som fristående processer initierade av HTTP-servern Ett CGI-program kan antingen köras utan argument eller ges argument via WEB-sida HTML inkluderar sätt att kommunicera med CGIprogram previous next 20 %M UQ(LGHUElFN 10
11 6HUYHU6LGH,QFOXGHV 66, Sidor som kan bearbetas av servern innan dom skickas till klienten Idag istället ASP (Active Server Pages) Servlets och JSP (Java Server Pages) SSP (Smalltalk Server Pages) och liknande previous next 21 OLHQWHURFKVHUYUDUVRPVDJWVWLGLJDUH«Dom flesta moderna nätverksprogram baseras på en klient-server-modell En server är ett program som erbjuder tjänster En klient är ett program som frågar en server om tjänster En server väntar på att klienter skall ansluta En klient initierar en "konversation" previous next 22 %M UQ(LGHUElFN 11
12 6RFNHWDU Definition(QVRFNHW luhqlqgsxqnwi UHQ WYnYlJVNRPPXQLNDWLRQPHOODQWYnSURJUDPVRPN UVL QlWYHUNHW(QVRFNHW luexqghqwloohwwsruwqxpphu Vn DWWXQGHUOLJJDQGHODJHUNDQLGHQWLILHUDYDUWGDWDVNDOO VNLFNDV 6RFNHWDU ILQQVDYWYnW\SHU Serversocketar som väntar på att klienter skall ansluta sig Klientsocketar som ansluter till servrar,-dyduhsuhvhqwhudvvrfnhwdu DYNODVVHUQD ServerSocket och Socket previous next 23 9DUI UVRFNHWDU Ger oss möjlighet att på ett smidigt och uniformt sätt kommunicera mellan maskiner av olika typer Möjliggör programspråksoberoende kommunikation Enkelt att få program som är skrivna i olika programspråk att kommunicera previous next 24 %M UQ(LGHUElFN 12
13 6RFNHWDU W\SLVNWNOLHQWSURJUDP 1. Skapa en socket. 2. Öppna in- och utström mot socketen. 3. Läs från och skriv på socketen. 4. Stäng strömmarna. 5. Stäng socketen. previous next Socket socket = new Socket(HOSTNAME, PORT); 2. out = new PrintWriter(socket.getOutputStream(), true); in = new BufferedReader( new InputStreamReader( socket.getinputstream())); 3. while ((userinput = stdin.readline())!= null) {out.println(userinput); System.out.println("från servern:" + in.readline());; 4. in.close(); out.close(); 5. socket.close(); previous next 26 %M UQ(LGHUElFN 13
14 6RFNHWDU W\SLVNWVHUYHUSURJUDP 1. Skapa en server-socket. 2. Lyssna efter anslutande klienter 3. Skapa socket mot varje anslutande klient 4. Öppna in- och utström mot klientsocketerna. 5. Läs från och skriv på klientsocketen. 6. Stäng strömmarna. 7. Stäng klientsocketerna. 8. Stäng serversocketen. previous next 27 ([HPSHOHQNHOVHUYHUNOLHQWDSSVHUYHUQ /* Deklarera en serversocket: theserver (som lyssnar efter klienter), klientsocket: theconnection (som tar hand om ansluten klient), utdataström: p (för att skicka information till klienten) */ ServerSocket theserver; Socket theconnection; PrintWriter p; //Öppna serversocket på PORTNUMMER theserver = new ServerSocket(PORTNUMMER); while (VILLKOR) {//Så länge som VILLKOR är sant fortsätter vi theconnection = theserver.accept(); //Vänta till klient ansluter p = new PrintWriter(theConnection.getOutputStream()); p.println(information); //Skicka INFORMATION till klienten theconnection.close(); // avbryt förbindelsen med klienten theserver.close(); //Stäng serversocketen previous next 28 %M UQ(LGHUElFN 14
15 H[HPSHONRGVHUYHU import java.net.*; import java.io.*; import java.util.date; public class DayTimeServer { public final static int daytimeport = 4711; public static void main(string[] args) { ServerSocket theserver; Socket theconnection; PrintWriter p; try { theserver = new ServerSocket(daytimePort); //forts nästa sida previous next 29 try { while (true) { theconnection = theserver.accept(); System.out.println("Connection: "+ theconnection); p = new PrintWriter( theconnection.getoutputstream()); p.println(new Date()); theconnection.close(); //end while catch (IOException e) { theserver.close(); System.err.println(e); catch (IOException e) {System.err.println(e); previous next 30 %M UQ(LGHUElFN 15
16 ([HPSHOHQNHOVHUYHUNOLHQWDSSNOLHQWHQ /* Deklarera en socket: thesocket (som ska anslutas till servern), namn på severn: hostname (dvs servermaskinens ipadress), indataström: inputstream (för att ta emot information från servern) */ Socket thesocket; String hostname; DataInputStream inputstream; //Skapa socket thesocket = new Socket(hostname, 4711); //indataström som läser från socketen inputstream = new DataInputStream(theSocket.getInputStream()); // ta emot information från servern String thetime = inputstream.readline(); System.out.println("It is " + thetime + " at " + hostname); thesocket.close(); previous next 31 H[HPSHONRGNOLHQW import java.net.*; import java.io.*; public class DaytimeClient { public static void main(string[] args) { Socket thesocket = null; String hostname; DataInputStream inputstream; if (args.length > 0) { hostname = args[0]; else { //om ingen ip-adress ges så använder vi lokala maskinens hostname = "localhost"; previous next 32 %M UQ(LGHUElFN 16
17 try { thesocket = new Socket(hostname, 4711); inputstream = new DataInputStream(theSocket.getInputStream()); String thetime = inputstream.readline(); System.out.println("It is " + thetime + " at " + hostname); // end try catch (UnknownHostException e) { System.err.println(e); catch (IOException e) { System.err.println(e); finally {try {thesocket.close(); catch (IOException e) { previous next 33 )DVWDSRUWDU Vi kan ansluta oss till fasta portar med på förhand given service på dom flesta datorer Tex 25 för mail 144 för news 23 för telnet En användbar port för att testa förbindelser eller egen klient är echo-porten nr: 7 Port reserverade för speciella typer av service tex port 80 är den normala WWW-porten previous next 34 %M UQ(LGHUElFN 17
18 (QNHOWWHVW Ett exempel som ansluter sig till standardservicen echo (på port 7) som helt enkelt bara skickar tillbaks den text man skickar till den.,psruwhud klasser för io och nät import java.io.*; import java.net.*; public class EchoClient { public static void main(string[] args) throws IOException { Socket echosocket = null; PrintWriter out = null; BufferedReader in = null; 6NDSDÃNOLHQW kopplad mot en av NADAs datorer Samt in- och utström try { HFKR6RFNHW ÃQHZÃ6RFNHWÅIDXQQDGDNWKVHÅÃ RXW ÃQHZÃ3ULQW:ULWHUHFKR6RFNHWJHW2XWSXW6WUHDPÃWUXH LQÃ ÃQHZÃ%XIIHUHG5HDGHUQHZÃ,QSXW6WUHDP5HDGHUHFKR6RFNHWJHW,QSXW6WUHDP catch (UnknownHostException e) { System.err.println("Don t know about host: faun."); System.exit(1); catch (IOException e) { System.err.println("Couldn t get I/O for the connection to: faun."); System.exit(1); previous next 35 6WU PÃPRW WHUPLQDOHQ Så länge som användaren ger input VNLFND GHWÃKHODÃWLOO VRFNHWHQ OlV VYDUHW samt eka det på terminalen %XIIHUHG5HDGHUÃVWG,QÃ ÃQHZÃ%XIIHUHG5HDGHUQHZÃ,QSXW6WUHDP5HDGHU6\VWHPLQ String userinput; WU\Ã^ ZKLOHÃXVHU,QSXWÃ ÃVWG,QUHDG/LQHÃÄ ÃQXOOÃ^ RXWSULQWOQXVHU,QSXW 6\VWHPRXWSULQWOQÅHFKRÃÅÃÃLQUHDG/LQH out.close(); in.close(); stdin.close(); echosocket.close(); catch (IOException e) { previous next 36 %M UQ(LGHUElFN 18
19 (Q NOLHQWVRPDQVOXWHUWLOOHQVHUYHU RFKKlPWDUDQJLYHQ 85/ Ett exempel med ett klientprogram som ansluter till angiven URL och hämtar innehållet i aktuell fil. Utmatningen sker antingen till given fil eller till terminalen. import java.io.*; import java.net.*; ) UVWDÃ DUJXPHQWHWÃ URL:en $QGUDÃ DUJXPHQWHW eventuell fil dit utmatningen skall ske public class HttpClient { public static void main(string[] args) { try { if ((args.length!= 1) && (args.length!= 2)) throw new IllegalArgumentException("Wrong number of arguments"); OutputStream to_file; if (args.length == 2) to_file = new FileOutputStream(args[1]); else to_file = System.out; previous next 37 'HODÃXSS 85/HQÃSnÃVLQDÃ EHVWnQGVGHODU 6NDSDÃVRFNHW PRWÃDQJLYHQÃYlUG RFKÃSRUW URL url = new URL(args[0]); String protocol = url.getprotocol(); if (!protocol.equals("http")) throw new IllegalArgumentException("URL must use http: protocol"); String host = url.gethost(); int port = url.getport(); if (port == -1) port = 80; // om ingen port given använd defaultporten String filename = url.getfile(); Socket socket = new Socket(host, port); 6NDSDÃLQ RFK XWPDWQLQJVVWU P PDUÃPRWÃVHUYHUQ 6NLFNDÃI UIUnJDQ WLOOÃVHUYHUQÃPKD *(7 InputStream from_server = socket.getinputstream(); PrintWriter to_server = new PrintWriter(new OutputStreamWriter(socket.getOutputStream())); to_server.println("get " + filename); to_server.flush(); // Se till att det hela skickas på en gång! previous next 38 %M UQ(LGHUElFN 19
20 6NDSDÃEXIIHUW I UÃDWWÃOlVDÃGHWà VHUYHUQÃVNLFNDU byte[] buffer = new byte[4096]; int bytes_read; 6nÃOlQJHÃVRP GHWÃILQQVÃQnJRW DWWÃOlVDÃVNULYÃGHW SnÃILOÃHOOHUà WHUPLQDO while((bytes_read = from_server.read(buffer))!= -1) to_file.write(buffer, 0, bytes_read); 6WlQJÃI UELQGHOVH socket.close(); to_file.close(); catch (Exception e) { System.err.println(e); System.err.println("Usage: java HttpClient <URL> [<filename>]"); previous next 39 (Q HQNHO :(%VHUYHU VRPEDUDHNDUIUnJRUVRPVWlOOV WLOOGHQ En enkel server som bara ekar frågor som ställs till den. Kan bla användas för att se hur en fråga från en WEB-läsare ser ut eller hur data skall skickas tillbaks från en server. import java.io.*; import java.net.*; public class HttpMirror { public static void main(string args[]) { try { int port = Integer.parseInt(args[0]); $UJXPHQWHWÃDQJHUÃGHQà SRUWÃVRPÃVHUYHUQÃVNDOOà N UDÃSn 6NDSDà VHUYHUVRFNHW Snà DQJLYHQÃSRUW 9lQWDÃWLOOÃNOLHQW DQVOXWHU ServerSocket ss = new ServerSocket(port); for(;;) { Socket client = ss.accept(); 9LÃN UÃRPÃRFKÃRPÃLJHQÃlQGDÃWLOOVÃVHUYHUQà WHUPLQHUDV PHGÃWH[ &75/& previous next 40 %M UQ(LGHUElFN 20
21 6NDSDÃLQ RFK XWPDWQLQJVVWU P PDUÃPRWÃNOLHQWHQ BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream())); PrintWriter out = new PrintWriter(new OutputStreamWriter(client.getOutputStream())); 6NLFNDÃ YHU SURWRNROO LQIRUPDWLRQ WLOOÃNOLHQWHQ out.println("http/ "); // Version & statuskod out.println("content-type: text/plain"); // typen på data som vi skickar out.println(); // Slut på huvudet out.flush(); /lvãiunqãnolhqwhq RFKÃHNDÃWLOOEDNVÃ GHW String line; while((line = in.readline())!= null) { if (line.length() == 0) break; out.println(line); previous next 41 out.close(); in.close(); client.close(); catch (Exception e) { System.err.println(e); System.err.println("Usage: java HttpMirror <port>"); Kör genom att 1) starta programmet på den lokala datorn java HttpMirror ) Öppna klient mot servern från vanlig web-läsare Ge eventuellt argument och se hur detta ter sig previous next 42 %M UQ(LGHUElFN 21
22 ([HPSHO/\VVQDRFKVNULYLQIRVHUYHU import java.net.*; import java.io.*; class JustListen { public static void main(string [] args) { try { ServerSocket ssock = new ServerSocket(1234); while (true) { Socket sock = ssock.accept(); printinfo(sock); sock.close(); catch(ioexception e) {System.err.println(e); private static void printinfo(socket s) { System.out.println("Remote (server) port: " + s.getport()); System.out.println("Local (client) port: " + s.getlocalport()); System.out.println("Server IP addr: " + s.getinetaddress()); System.out.println("Client IP addr: " + previous next 43 s.getlocaladdress()); OLHQW import java.net.*; import java.io.*; public class JustListenClient { public static void main(string[] args) { if (args.length < 1) { System.err.println("JustListenClient <IP address of server>"); return; try { Socket sock = new Socket(args[0], 1234); sock.close(); catch(ioexception e) {System.err.println(e); previous next 44 %M UQ(LGHUElFN 22
23 9LWLWWDUSnQnJUDDQGUDH[HPSHO Reverse och ReverseClient Vi skriver socketar i Smalltalk oxå! För att illustrera likheter Vi testar echo-exemplet Vi gör en ReverseClient i Smalltalk också Som använder Java-servern Reverse previous next 45 ([HPSHO5HYHUVH import java.net.*; import java.io.*; public class Reverse { public static void main(string[] args) { ServerSocket ssock = null; try {ssock = new ServerSocket(3456); catch(ioexception e) {System.err.println(e); return; System.out.println("Server running..."); while (true) { try { Socket sock = ssock.accept(); BufferedReader in = new BufferedReader( new InputStreamReader(sock.getInputStream())); String t = in.readline(); if (t!= null) {// something read? PrintWriter ps = new PrintWriter(sock.getOutputStream()); ps.println(new String(new StringBuffer(t).reverse())); ps.flush(); sock.close(); catch(ioexception e) {System.err.println(e); previous next 46 %M UQ(LGHUElFN 23
24 ([HPSHO5HYHUVH&OLHQW import java.net.*; import java.io.*; public class ReverseClient { public static void main(string [] args) { if (args.length < 1) { System.err.println("ReverseClient <IP address of server>"); return; try { String s = "In the Quiet Morning"; Socket sock = new Socket( args[0], 3456 ); PrintWriter out = new PrintWriter( sock.getoutputstream() ); out.println(s); out.flush(); BufferedReader in = new BufferedReader( new InputStreamReader(sock.getInputStream())); String t = in.readline(); if (t!= null) System.out.println("To server: " + s + "\nfrom server: " + t); sock.close(); catch(ioexception e) {System.err.println(e); previous next 47 ([HPSHOHFKR L6PDOOWDON servername := faun.nada.kth.se. 7DÃUHGDÃSnÃYLONHQÃSRUWÃHFKR N UÃSn port :=,36RFNHW$GGUHVVÃVHUYLFH3RUW%\1DPHÃHFKR Skapa klientsocket mot given server och port socket := 6RFNHW$FFHVVRUÃGHIDXOW&ODVV QHZ7&3FOLHQW7R+RVWÃserverName SRUWÃport. 6NDSDÃOlVÃRFKÃVNULYVWU P stream := VRFNHW UHDG$SSHQG6WUHDP 6NULYÃQnJRWÃRFKÃOlVÃVYDUHW stream QH[W3XW$OOÃ+HOORÃ:RUOGÄÃFU reply := VWUHDPÃQH[W/LQH 6WlQJÃRFKÃ WDÃKDQGÃRP ÃUHVXOWDWHW stream close. reply previous next 48 %M UQ(LGHUElFN 24
25 ([HPSHO5HYHUVH&OLHQW L6PDOOWDON reversesocket := 6RFNHW$FFHVVRUÃGHIDXOW&ODVV QHZ7&3FOLHQW7R+RVWÃORFDOKRVW SRUWÃ reversestream := UHYHUVH6RFNHWÃUHDG$SSHQG6WUHDP UHYHUVH6WUHDPÃQH[W3XW$OOÃ+HOORÃ:RUOGÄÃFU reply := UHYHUVH6WUHDPÃQH[W/LQH reversestream FORVH. reply previous next 49 %M UQ(LGHUElFN 25
Nätverk grunder Föreläsning 1: 1: Introduktion till Internet
previous next Nätverk grunder Föreläsning 1: 1: Introduktion till Internet Kursledare: Cristian Bogdan cristi@nada.kth.se Gästföreläsare: Björn Eiderbäck bjorne@nada.kth.se Innehåll Kort om grundläggande
Läs merInnehåll. Socketar. Klient och serverprogrammering: Socketar Föreläsning 9. Klienter och servrar (som sagts tidigare ) Varför socketar
previous Klient och serverprogrammering: Föreläsning 9 Innehåll Fördjupning se tex Harold, Hall Inledning och/eller Tut Några enkla exempel Pekare till och kort beskrivning av större exempel Speciella
Läs merNätverk och Java, grunder Föreläsning 0: 0: Introduktion till Internet
Nätverk och Java, grunder Föreläsning 0: 0: Introduktion till Internet Se Se också Intro en en streamad videoinspelning som som finns finns på på nätet nätet Innehåll Kort om grundläggande nätverkskoncept
Läs merInternetprogrammering En kort Introduktion
Internetprogrammering En kort Introduktion Björn Eiderbäck bjorne@nada.kth.se Innehåll Kort om grundläggande nätverkskoncept Internet Socketar Referenser Harold, Java Network Programming, Elliotte Harold
Läs merHämta data mha URLer Föreläsning 2b. Innehåll Klassen URL
Hämta data mha Föreläsning 2b För För mer mer info info se se tex texharold, Hall Halleller Tut Tut (den (den senare senare är är ganska ganska rättfram). Innehåll Klassen URL Arbeta med, exempel Hur hittar
Läs merInnehåll Appletar i Java
2203$ ) UHOlVQLQJ Konstruktion av appletar, trådar, något om Internet och användning av socketar Innehåll, kort om: appletar trådar Internet socketar previous next Del 1 Appletar Innehåll Appletar i Java
Läs merAdministration: Grundläggande internetprogrammering
Administration: Grundläggande internetprogrammering Verktyg för hands-on internetprogrammering 2D2052 (ingint06) / 2D1335 (gruint06) Serafim Dahl serafim@nada.kth.se gruint06/ingint06, intro + intro till
Läs merObjektorienterad Programkonstruktion. Föreläsning 10 7 dec 2015
Objektorienterad Programkonstruktion Föreläsning 10 7 dec 2015 Nätverksprotokoll - OSI Open Systems Interconnection model (ISO standard) definierar 7 lager för nätverkskommunikation: 1 - Physical Layer:
Läs merGrundläggande datavetenskap, 4p
Grundläggande datavetenskap, 4p Kapitel 4 Nätverk och Internet Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-23 IT och medier 1 Innehåll Nätverk Benämningar Topologier Sammankoppling
Läs merDatakommunika,on på Internet
Webbteknik Datakommunika,on på Internet Rune Körnefors Medieteknik 1 2015 Rune Körnefors rune.kornefors@lnu.se Internet Inter- = [prefix] mellan, sinsemellan, ömsesidig Interconnect = sammanlänka Net =
Läs merIT för personligt arbete F2
IT för personligt arbete F2 Nätverk och Kommunikation DSV Peter Mozelius Kommunikation i nätverk The Network is the Computer Allt fler datorer är sammankopplade i olika typer av nätverk En dators funktionalitet
Läs merOlika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET
Olika slags datornätverk Förberedelse inför laboration 4. Historik Protokoll, / Adressering, namnservrar WWW, HTML Föreläsning 5 Internet LAN Local Area Network student.lth.se (ganska stort LAN) MAN Metropolitan
Läs merSurfning. Webbklienter och webbservrar. Specialskrivna webbservrar. Kommunikation med sockets
Surfning Webbklienter och webbservrar Starta Firefox (eller Opera, eller Internet Explorer, eller... ). Skriv en URL i adressfältet: http://www.w3.org/history/1989/proposal.html. Webbläsaren kopplar upp
Läs merTentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13
LUNDS TEKNISKA HÖGSKOLA Datavetenskap Nätverksprogrammering 2004 LÖSNINGAR Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13 DEL 1 - Frågor av teoretisk, principiell eller utredande
Läs merDatakommunikation och Internet
Datakommunikation och Internet Socketprogrammering Peter Sundqvist Socket-programmering Klient/server ansatsen TCP/IP protokollgrafen Java-programering UDP TCP Korta tips om Strömmar Script Trådar (föreläsning
Läs merMattias Wiggberg 1. Orientera på Internet. IP-adress. IP-adresserna räcker inte... Mer om IP-adresser
Orientera på Internet Nuvarande Internet Protocol version 4 (IPv4). Internet är en infrastruktur som förbinder en mängd datorer. Hur hittar vi till en specifik dator? Väl framme vid datorn, hur hittar
Läs merTung bakgrundsaktivitet t.ex. Aktiva objekt t.ex. Animering, simulering. DD2385 Programutvecklingsteknik Några bilder till föreläsning 9 6/5 2013
DD2385 Programutvecklingsteknik Några bilder till föreläsning 9 6/5 2013 Innehåll Trådar i Java swing- klassen Timer Klient-Server-program Trådar Tråd = enkel process Ett program kan ha flera trådar, flera
Läs merDatakommunika,on på Internet
Föreläsning i webbdesign Datakommunika,on på Internet Rune Körnefors Medieteknik 1 2012 Rune Körnefors rune.kornefors@lnu.se Klient Server Klient (Client kund) ED program för ad utnydja tjänster som begärs
Läs merJavas Exceptions. DD2385 Programutvecklingsteknik Fler bilder till föreläsning 7 23/ Kort om Javas Exceptions Trådar i Java
DD2385 Programutvecklingsteknik Fler bilder till föreläsning 7 23/4 2014 Innehåll Kort om Javas Exceptions Trådar i Java swing- klassen Timer Klient-Server-program Javas Exceptions Checked måste hanteras,
Läs merTCP/IP och Internetadressering
Informationsteknologi sommarkurs 5p, 2004 Mattias Wiggberg Dept. of Information Technology Box 337 SE751 05 Uppsala +46 18471 31 76 Collaboration Jakob Carlström TCP/IP och Internetadressering Slideset
Läs mer10 Kommunikation i Java
10 Kommunikation i Java adresser filaccess över nätverk ar och sockets datagram multicasting client-server Skansholm kap 18 Adressering En URL (=Uniform Resource Locator) identifierar en resurs på WWW
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2014 06 02, 8.00 13.00 Del 1 1. a) TCP (Transmission Control Protocol) och UDP (User Datagram
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2018 03 14, 8.00 13.00 Del 1 1. Applikationslagret levererar data mellan applikationer och till
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2012 05 28, 8.00 13.00 Del 1 1. Time To Live (TTL) anger hur många routrar ett multicastpaket
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2016 05 31, 8.00 13.00 Del 1 1. a) Vid multicast skickas ett datagram från en sändande dator
Läs merWebbservrar, severskript & webbproduktion
Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera
Läs merWebbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011
Webbteknik II Föreläsning 4 Watching the river flow Web Service XML-RPC, SOAP, WSDL, UDDI HTTP Request, Response, Headers, Cache, Persistant Connection REST Hype or the golden way? Web Service / Webbtjänst
Läs merTransport Layer. Transport Layer. F9 Meddelandesändning med UDP EDA095 Nätverksprogrammering. Java och UDP TCP/UDP
F9 Meddelandesändning med UDP EDA095 Roger Henriksson Datavetenskap Lunds universitet Transport Layer Transport Layer Bygger vidare på på "Internet Internet Layer" Layer / IP. / IP. Applikationsprogram
Läs merF5 Meddelandesändning med TCP
F5 Meddelandesändning med TCP EDA095 Nätverksprogrammering Roger Henriksson Datavetenskap Lunds universitet Transmission Control Protocol TCP En del av transportlagret. Applikationsprogram Transportlagret
Läs merInternet. Internet hur kom det till? Internets framväxt. Ett hierarkiskt uppbyggt telenät Kretskopplat/circuit switching
Internet Internet hur kom det till? A worldwide collection of interconnected networks. Ingen central dator/nät Ingen organisaion styr Internet, men ett antal organisationer samordnar aktiviteten fi ICANN
Läs merFöreläsning 5 Meddelandesändning med TCP
Föreläsning 5 Meddelandesändning med TCP EDA095 Nätverksprogrammering Per Andersson Datavetenskap Lunds universitet Transmission Control Protocol TCP En del av transportlagret. Applikationsprogram Transportlagret
Läs merDI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson
DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson Lösningar till TENTAMEN I IXC003 SYSTEMUTVECKLING MED INTERNET/INTRANET, del 1 (5p) för IT3 och INTERNETPROGRAMMERING MED JAVA
Läs merF8 Meddelandesändning med UDP
F8 Meddelandesändning med UDP EDA0965 Nätverksprogrammering Per Andersson Datavetenskap Lunds universitet Transport Layer Bygger vidare på Internet Layer / IP. Applikationsprogram Transportlagret Internetlagret
Läs mer5 Internet, TCP/IP och Tillämpningar
5 Internet, TCP/IP och Tillämpningar Syfte: Förstå begreppen förbindelseorienterade och förbindelselösa tjänster. Kunna grundläggande egenskaper hos IP (från detta ska man kunna beskriva de viktigaste
Läs merFÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl
Högskolan Dalarna sid 1 av 6 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2001-03-16, kl 14.00-18.00 1. Grunderna i
Läs merFöreläsning 1. På klientsidan... Allmänt. På serversidan... Och dessutom... DD1389 Internetprogrammering 6 hp
Föreläsning 1 DD1389 Internetprogrammering 6 hp Kursintroduktion Lärare: Vahid Mosavat, vahid@kth.se Kursaktivitet: föreläsningar, laborationer Kursmaterial: labbinstruktioner, föreläsningsanteckningar
Läs merÖversikt. Skriva och läsa data. Kontrollflöde. Två sorters loopar. For-loop. For-loop
Översikt Repetition for-loopar Skriva till och läsa från filer Strömmar Eclipse Hur anpassa till vad du gillar? Skriva och läsa data Institutionen för datavetenskap Programmering 1 Rita Kovordányi 2 Kontrollflöde
Läs merFöreläsning 5 Meddelandesändning med TCP
Transmission Control Protocol TCP Föreläsning 5 Meddelandesändning med TCP EDA095 Per Andersson Datavetenskap Lunds universitet En del av transportlagret. Applikationsprogram Applikationsprotokoll Applikationsprogram
Läs merLite mer om CGI-programmering
Lite mer om CGI-programmering Innehåll Vad är CGI? Vad är Forms? Vad är Perl? Forms, CGI och Perl Läs också: Internetprogrammering F 14 Kursboken s s 48-51 Exemplen på på kursens sidor: sidor: http://www.nada.kth.se/kurser/kth/2d4334/98-99/contents/cgi/examples.html
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2008 05 26, 8.00 13.00 1. a) Raden sent = input.read(buffer); läser in så många bytes (dock max
Läs merSpråkkonventioner och redigering av tal.
Språkkonventioner och redigering av tal. Kap J3-1 Konventioner för olika språk hanteras med hjälp av klassen java.util.locale Ett objekt i denna klass beskriver en lokal konvention. Lokala konventioner
Läs merChrister Scheja TAC AB
Byggnadsautomation för ingenjörer Byggnadsautomation för ingenjörer VVS-tekniska föreningen, Nordbygg 2004 Christer Scheja TAC AB resentation, No 1 Internet/Intranet Ihopkopplade datornät ingen ägare Internet
Läs merNätverksprogrammering. Tekniker för att skriva program som kommunicerar med varandra över ett nätverk. F1 Nätverk och strömmar.
F1 Nätverk och strömmar EDA095 Roger Henriksson Datavetenskap Lunds universitet Tekniker för att skriva program som kommunicerar med varandra över ett nätverk. Särskild tonvikt på Internet/IP-baserade
Läs merDI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2009 06 01, 14.00 19.00 1. a) Falskt b) Sant c) Sant d) Falskt e) Falskt f) Sant g) Sant h) Falskt
Läs merF1 Nätverk och meddelandesändning
F1 Nätverk och meddelandesändning med UDP EDA095 Nätverksprogrammering Roger Henriksson Datavetenskap Lunds universitet Nätverksprogrammering Tekniker för att skriva program som kommunicerar med varandra
Läs merAtt skriva till och läsa från terminalfönstret
Att skriva till och läsa från terminalfönstret Oftast används grafiska komponenter i Java för att kommunicera med användaren (användargränssnitt), men det finns objekt i standardbiblioteken för de tillfällen
Läs merFakulteten för ekonomi, kommunikation och IT. Corba. Datum: Mathias Andersson
Fakulteten för ekonomi, kommunikation och IT Corba Datum: 2007-10-17 Namn: Kurs: Henrik Bäck Mathias Andersson DVGC02 Innehållsförteckning Implementation 3 IDL-fil 3 Server 3 Klient 3 Körning 3 Bilagor
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2018 04 11, 8.00 13.00 Del 1 1. a) IP-numret identifierar en enskild dator på internet. b) Port-numret
Läs merProgrammering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
Läs merWWW. Exempel på klientsidan. Överföring av en html-fil. Snyggare variant. Verkligt format. Meddelandeformat för begäran HTTP
Exempel på klientsidan WWW Javascript-interpretator XML-interpretator HTML-interpretator Java-interpretator CSS-interpretator Använder TCP Kan återanvända uppkoppling Inga tillstånd hos servern OS API
Läs merF2 Java I/O - strömmar Meddelandesändning med TCP
F2 Java I/O - strömmar Meddelandesändning med TCP EDA095 Nätverksprogrammering Roger Henriksson Datavetenskap Lunds universitet Java I/O Strömmar och filer Ström (eng. Stream) En ström är en sekvensiell
Läs merSocket-programmering. Programmering för distribution. Klient/server ansatsen. Klient/server ansatsen TCP/IP protokollgrafen Java-programering
Socket-programmering Klient/server ansatsen / protokollgrafen Java-programering o o o Fler än en klient Riktiga servrar Programmering för distribution Varför datornät? o För att distribuera beräkningar
Läs merLösningar för tenta 2 DAT043,
Lösningar för tenta 2 DAT043, 2018-06-08. Uppgift 1 public class Car{ private String model; private String year; private double price; public Car(String model, String year, double price){ this.model =
Läs merJava och nätverk Läsanvisningar Skansholm (med Swing) kapitel 18 Budd kapitel 22
Java och nätverk Läsanvisningar Skansholm (med Swing) kapitel 18 Budd kapitel 22 1 Dagens ämnen Introduktion till nätverksprogrammering i Java TCP/IP Portar, sockets, strömmar Exempel: multitrådad bank-server
Läs merFöreläsnings 9 - Exceptions, I/O
Föreläsnings 9 - Exceptions, I/O Josef Svenningsson Tisdag 6/11 Undantag - Exceptions Kommer ni ihåg det här programmet? Det var ett av de första ni såg i första föreläsningen. import javax.swing.*; public
Läs merTentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2011 06 03, 14.00 19.00 Del 1 1. REST-ramverk använder HTTP metoder för att interagera med en
Läs merF1 Nätverk och strömmar
F1 Nätverk och strömmar EDA095 Nätverksprogrammering Roger Henriksson Datavetenskap Lunds universitet Nätverksprogrammering Tekniker för att skriva program som kommunicerar med varandra över ett nätverk.
Läs merFöreläsning 1 Nätverk och strömmar
Föreläsning 1 Nätverk och strömmar EDA095 Nätverksprogrammering Per Andersson Datavetenskap Lunds universitet Nätverksprogrammering Tekniker för att skriva program som kommunicerar med varandra över ett
Läs merGrundläggande nätverksteknik. F2: Kapitel 2 och 3
Grundläggande nätverksteknik F2: Kapitel 2 och 3 Kapitel 2 COMMUNICATING OVER THE NETWORK Grundstenar i kommunka;on Tre grundläggande element Message source The channel Message des;na;on Media Segmentering
Läs merTentamen ITK:P2. Inga hjälpmedel tillåtna förutom penna och papper. Skriv tydligt och texta gärna. 14 st frågor, 70 poäng.
Tentamen ITK:P2 lördag 2007-04-14 Inga hjälpmedel tillåtna förutom penna och papper. Skriv tydligt och texta gärna. 14 st frågor, 70 poäng. 40 poäng ger betyget G, 55 ger VG Peter Mozelius DSV 1.) Ditt
Läs merUndantagshantering. Fördjupad Java. Fel. Undantag. Fånga Undantag. Grupper av Undantag
Undantagshantering Fördjupad Java Ett undantag (Exception) är ett objekt som påtalar en ovanlig eller felaktig situation i ett program. Undantag kastas av programmet och kan fångas och hanteras. Java har
Läs merUndantagshantering. Fördjupad Java. Undantag. Fel. Grupper av Undantag. Fånga Undantag
Undantagshantering Fördjupad Java Ett undantag (Exception) är ett objekt som påtalar en ovanlig eller felaktig situation i ett program. Undantag kastas av programmet och kan fångas och hanteras. Java har
Läs merTentamensskrivning Nätverksprogrammering (EDA095) , kl 8-13
LUNDS TEKNISKA HÖGSKOLA Datavetenskap Nätverksprogrammering 2006 LÖSNINGAR Tentamensskrivning Nätverksprogrammering (EDA095) 2004-05-27, kl 8-13 DEL 1 - Frågor av teoretisk, principiell eller utredande
Läs merObjektorienterad Programkonstruktion. Föreläsning 11 6 dec 2016
Objektorienterad Programkonstruktion Föreläsning 11 6 dec 2016 Föreläsningen 13/12 Halvtidsrepetition Maila frågor som ni vill att jag tar upp! ccs@kth.se Processer Vad vi i dagligt tal menar när vi pratar
Läs mer2I1070 Lektion 2 Servlets och databaskopplingar Internetprogrammering 2I1049 Treskiktsarkitektur Klient-server med servlets
2I1070 Lektion 2 Servlets och databaskopplingar KTH-MI Peter Mozelius Internetprogrammering Tidigare på kursen 2I1049 har vi enbart sysslat med fristående program där allt körs på en och samma dator. I
Läs mer5 Internet, TCP/IP och Applikationer
5 Internet, TCP/IP och Applikationer Syfte: Förstå begreppen förbindelseorienterade och förbindelselösa tjänster. Kunna grundläggande egenskaper hos IP (från detta ska man kunna beskriva de viktigaste
Läs merGrundläggande nätverksteknik. F3: Kapitel 4 och 5
Grundläggande nätverksteknik F3: Kapitel 4 och 5 Kapitel 4 OSI TRANSPORT LAYER Transportlagrets sy=e Segment av data skall nå räa applikabon hos både avsändare och moaagare Uppdelning av dataströmmen från
Läs merKarlstads universitet Institutionen för Informationsteknologi Datavetenskap
TENTAMEN FÖR KURS DAV B02, DATAKOMMUNIKATION I 5p Sid 1 av 7 Måndag 02-01-14 kl. 14.00 19.00 Ansvariga lärare: Johan Garcia och Annika Wennström Tillåtna hjälpmedel: Kalkylator Betygsgränser: 3=30-39p,
Läs merFördjupad Java. Undantagshantering. Fel
Fördjupad Java 1 Undantagshantering Ett undantag (Exception) är ett objekt som påtalar en ovanlig eller felaktig situation i ett program. Undantag kastas av programmet och kan fångas och hanteras. Java
Läs merParsing med Recursive Descent, Avbildningsklasser. Syntaxdiagram. Syntaxdiagram och kodning expression. Betrakta följande uttryck
Betrakta följande uttryck a +(b + c) d + e (f + g h) Parsing med Recursive Descent, Avbildningsklasser Tobias Wrigstad (baserat på bilder från Tom Smedsaas) 22 november 2010 Beräkning med regler: multiplikation
Läs merÖvningar - Datorkommunikation
Övningar - Datorkommunikation 1. Förklara skillnaden på statisk och dynamisk IP konfiguration. Ange även vad som krävs för att dynamisk IP konfiguration ska fungera. 2. Förklara följande förkortningar
Läs merFÖRSLAG TILL LÖSNINGAR, TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA, 5p för SY2, , kl
Högskolan Dalarna sid 1 av 5 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR, TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA, 5p för SY2, 2001-04-28, kl 09.00-13.00 1. Grunderna
Läs merObjektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11
Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11 Undantag Engelska: exceptions Skansholm: exceptionella händelser Fel som genereras om man försöker
Läs merWebbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion
Webbteknik En kort introduktion Innehåll Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender 1 Historisk återblick 89 CERN Tim Berners Lee Ett plattformsoberoende sätt att sprida
Läs merF1 Nätverk och meddelandesändning
F1 Nätverk och meddelandesändning med UDP EDA095 Roger Henriksson Datavetenskap Lunds universitet Tekniker för att skriva program som kommunicerar med varandra över ett nätverk. Särskild tonvikt på Internet/IP-baserade
Läs mer1 PROTOKOLL. Nätverk. Agenda. Jonas Sjöström
Nätverk Jonas Sjöström jonas.sjostrom@dis.uu.se Baserat primärt på kapitel 4 i Brookshear (2008) samt valda kapitel ur Gralla Agenda 1. Protokoll 2. LAN och WAN 3. Kort om infrastruktur 4. Paketering och
Läs merFöreläsning 7. DD2390 Internetprogrammering 6 hp
Föreläsning 7 DD2390 Internetprogrammering 6 hp Innehåll Krypteringsöversikt (PKI) Java Secure Socket Extension (JSSE) Säkerhetsproblem 1. Vem är det man kommunicerar med Autentisering 2. Data kan avläsas
Läs merDatainsamling över Internet
Datainsamling över Internet I den här uppgiften skall du styra ett mätförlopp och hämta mätdata via internet. Från en dator skall du styra en annan dator och beordra den att utföra en mätning och skicka
Läs merGrundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2
AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga
Läs merF2 Java I/O - strömmar Meddelandesändning med TCP EDA095 Nätverksprogrammering
Java I/O Strömmar och filer F2 Java I/O - strömmar Meddelandesändning med TCP EDA095 Roger Henriksson Datavetenskap Lunds universitet Ström (eng. Stream) En ström är en sekvensiell följd av bytes (tecken).
Läs mer5. Internet, TCP/IP tillämpningar och säkerhet
5. Internet, TCP/IP tillämpningar och säkerhet Syfte: Förstå begreppen förbindelseorienterade och förbindelselösa tjänster. Kunna grundläggande egenskaper hos IP (från detta ska man kunna beskriva de viktigaste
Läs merFöreläsning 14. Filhantering
Föreläsning 14 Filhantering Filhantering Att hantera filer, dvs att läsa eller skriva data till en fil är en viktig del i de flesta program. Ur Javas synvinkel är filer objekt med egenskaper och metoder
Läs merF1 Nätverk och meddelandesändning
F1 Nätverk och meddelandesändning med UDP EDA095 Nätverksprogrammering Roger Henriksson Datavetenskap Lunds universitet Nätverksprogrammering Tekniker för att skriva program som kommunicerar med varandra
Läs mer2I1073 Lektion 2. Lektion 2a. Lektion 2a. Servlets, säkerhet, och filhantering. import java.io.*; import javax.servlet.*; import javax.servlet.http.
2I1073 Lektion 2 Servlets, säkerhet, och filhantering KTH-MI Peter Mozelius import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Lektion2a extends HttpServlet { public void
Läs merObjektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11
Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11 Undantag Engelska: exceptions Skansholm: exceptionella händelser Fel som genereras om man försöker
Läs merInput. Programmering. Andra källor
Programmering hh.se/db2004 Föreläsning 13: Undantag - med exempel från input klassen Scanner Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Input Standard Input Med standard
Läs merFöreläsning 5: Stora datanät Från användare till användare ARP
Föreläsning 5: Stora datanät Från användare till användare ARP Jens A Andersson (Maria Kihl) Rep: Protokollstruktur i en repeterare Sändare Repeterare Mottagare nätadapter överföring nätadapter nätadapter
Läs merFöreläsning 5: ARP (hur hitta MAC-adress) Från applikation till applikation
Föreläsning 5: ARP (hur hitta MAC-adress) Från till Jens A Andersson (Maria Kihl) Rep: Protokollstruktur i en repeterare Sändare Repeterare Mottagare nätadapter överföring nätadapter nätadapter nätadapter
Läs merLaborationer, moment 4 5
2D4135 Objektorienterad programmering, analys och design med Java, 5p, vt 2005 Laborationer, moment 4 5 Detta är andra delen av labkursen. Tag med denna sida till varje redovisning och se till att du får
Läs merTNMK30 - Elektronisk publicering
Webben TNMK30 - Elektronisk publicering Vad är internet? Vad är internet? Vad är internet? Internet: sammankoppling av datornätverk. Används för bl.a. epost, chat, filöverföring, webbsidor. Kommunikation
Läs merCommand line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016
Command line argumenter Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 /* Cla. java * Programmet illustrerar
Läs merObjektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Felhantering Eclipse Felsökning Command line argumenter
Läs merHur hänger det ihop? För att kunna kommunicera krävs ett protokoll tcp/ip, http, ftp För att veta var man skall skicka
Webben som verktyg Idag: Hur hänger det ihop? Viktiga tekniker Stegen i ett webbprojekt Verktyg Dreamweaver Photoshop Joomla CMS Storyboard och flödesschema Fixa webbhotell Hur hänger det ihop? För att
Läs merKapitel 5: Lokala nät Ethernet o 802.x. Lokala nät. Bryggan. Jens A Andersson (Maria Kihl)
Kapitel 5: Lokala nät Ethernet o 802.x Jens A Andersson (Maria Kihl) Lokala nät Ett lokalt nät (Local Area Network, LAN) är ett datanät med en begränsad storlek. Ett LAN kan i sin enklaste form bestå av
Läs merFrån användare till användare ARP. (Maria Kihl)
Föreläsning 5: Stora datanät Från användare till användare ARP Jens A Andersson (Maria Kihl) Rep: Kapacitetuppdelning i Länkens kapacitet kan delas upp på tre sätt: 1. Rumsmultiplex 2. Frekvensmultiplex
Läs merKomSys Hela kursen på en föreläsning ;-) Jens A Andersson
KomSys Hela kursen på en föreläsning ;-) Jens A Andersson Detta är vårt huvudproblem! 11001000101 värd Två datorer som skall kommunicera. värd Datorer förstår endast digital information, dvs ettor och
Läs merJAVAUTVECKLING LEKTION 7
JAVAUTVECKLING LEKTION 7 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Olika språkversioner (Klassen Locale) Utskrift i kommandofönster Inläsning via kommandofönster Standardklassen
Läs merLaborationer, moment 4 5
2D4135 Objektorienterad programmering, analys och design med Java, 5p, vt 2004 Laborationer, moment 4 5 Detta är andra delen av labkursen. Tag med denna sida till varje redovisning och se till att du får
Läs mer