Network Programming 授課教師 : 詹益禎 中文課名 : 網路程式設計 學分時數 : 3學分\3小時 助教 :許聖宏

Slides:



Advertisements
Similar presentations
Java Network Programming Vishnuvardhan.M. Dept. of Computer Science - SSBN Java Overview Object-oriented Developed with the network in mind Built-in exception.
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.
 2002 Prentice Hall. All rights reserved. Chapter 9: Servlets Outline 9.1 Introduction 9.2 Servlet Overview and Architecture Interface Servlet and.
Introduction to Java Networking Lecturer: Kalamullah Ramli Electrical Engineering Dept. University of Indonesia Session-6.
1 Chapter 9 Network Programming. 2 Overview Java has rich class libraries to support network programming at various levels. There are standard classes.
Network Programming Chapter 11 Lecture 6. Networks.
Liang, Introduction to Java Programming, Fifth Edition, (c) 2005 Pearson Education, Inc. All rights reserved Chapter 25 Networking.
Network Programming 授課教師 : 詹益禎 中文課名 : 網路程式設計 學分時數 : 3 學分\ 3 小時 助教 : 李宏杰、趙振宣 教室 : 上課時間 : 9:05~12:00 (Wed.)
Advanced Java Class Network Programming. Network Protocols Overview Levels of Abstraction –HTTP protocol: spoken by Web Servers and Web Clients –TCP/IP:
Socket Programming.
1 Java Networking – Part I CS , Spring 2008/9.
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Review For Midterm.
1 L52 Networking (1). 2 OBJECTIVES In this chapter you will learn:  To understand Java networking with URLs, sockets and datagrams.  To implement Java.
 Pearson Education, Inc. All rights reserved. 1 CH24 Networking : OBJECTIVES In this chapter you will learn:  To understand Java networking.
1 L53 Networking (2). 2 OBJECTIVES In this chapter you will learn:  To understand Java networking with URLs, sockets and datagrams.  To implement Java.
Networking Support In Java 2 Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Java Socket Support Presentation by: Lijun Yuan Course Number: cs616.
OSI model Presentation Application Session Transport Network Data Link Physical ftp, telnet, smtp http tcp;udp ip NIC, MAC application protocols socket,
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L24 (Chapter 25) Networking.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L23 (Chapter 25) Networking.
Intro Alexei Miagkov: researching GUI networking sound aspects of Java Walter Kammerer: researching networking concepts documenting real-time media concepts.
An Introduction to Internetworking. Why distributed systems - Share resources (devices & CPU) - Communicate people (by transmitting data)
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L22 (Chapter 25) Networking.
Networking Support In Java Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 25 Networking.
Networking Support In Java 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
An Introduction to Internetworking. Algorithm for client-server communication with UDP (connectionless) A SERVER A CLIENT Create a server-socket (listener)and.
TCP Sockets Reliable Communication. TCP As mentioned before, TCP sits on top of other layers (IP, hardware) and implements Reliability In-order delivery.
高等資訊網路 Advanced Computer Networking Yen-Cheng Chen
Socket Programming -What is it ? -Why bother ?. Basic Interface for programming networks at transport level It is communication end point Used for inter.
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 3 Inter-process Communication.
CS4273: Distributed System Technologies and Programming I Lecture 5: Java Socket Programming.
Introduction to Interprocess communication SE-2811 Dr. Mark L. Hornick 1.
 Socket  The combination of an IP address and a port number. (RFC 793 original TCP specification)  The name of the Berkeley-derived application programming.
CS 424/524: Introduction to Java Programming Lecture 25 Spring 2002 Department of Computer Science University of Alabama Joel Jones.
20-753: Fundamentals of Web Programming 1 Lecture 1: Introduction Fundamentals of Web Programming Lecture 1: Introduction.
DBI Representation and Management of Data on the Internet.
Chapter 18 Networking F Client/Server Communications F Simple Client/Server Applications F Serve Multiple Clients F Create Applet Clients F Send and Retrieve.
Vassil Roussev 2 A socket is the basic remote communication abstraction provided by the OS to processes. controlled by operating system.
Network Programming and Sockets CPSC 363 Computer Networks Ellen Walker Hiram College (Includes figures from Computer Networking by Kurose & Ross, © Addison.
Distributed Systems Concepts and Design Chapter 4.
1. I NTRODUCTION TO N ETWORKS Network programming is surprisingly easy in Java ◦ Most of the classes relevant to network programming are in the java.net.
CSNB534 Networked Computing Course Outline. Some Details.. Lecturer:Asma Shakil Room:BW-3-C48 Phone:2387 Web:
Lecture 9 Network programming. Manipulating URLs URL is an acronym for Uniform Resource Locator and is a reference (an address) to a resource on the Internet.
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
L 2 - 1 3( 1/ 20) : Java Network Programming. The Socket API The previous contents describe client-server interaction that application programs use when.
Networking with Java Socket programming. The Interweb thing Al Gore invented… Internet is a network of networks. The Internet is really people communicating.
TK 6244 – NETWORK PROGRAMMING Zulkarnain Md Ali Pusat Pengajian Sains Komputer E
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.
電腦網路 By 王丕中 國立中興大學 資訊科學系.
Java Programming: Advanced Topics 1 Networking Programming Chapter 11.
Concrete Architecture of Mozilla Firefox (version ) Iris Lai Jared Haines John,Chun-Hung,Chiu Josh Fairhead July 06, 2007.
數據通訊 By 王丕中 國立中興大學 資訊科學系. 什麼是數據通訊 數據通訊存在於現代人的所有生活中 數據通訊跟類比通訊的不同 數據通訊的好處 以液晶螢幕為例 對資科人來說 重心將放在由數據通訊所組成的網路與協 定.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
Internet Engineering Course Outline. Internet Engineering Course; Sharif University of Technology Aims and Contents To attain necessary skills for handling.
1 Lecture 9: Network programming. 2 Manipulating URLs URL is an acronym for Uniform Resource Locator and is a reference (an address) to a resource on.
Advanced Java Session 4 New York University School of Continuing and Professional Studies.
Agenda Socket Programming The OSI reference Model The OSI protocol stack Sockets Ports Java classes for sockets Input stream and.
Java How to Program, 9/e © Copyright by Pearson Education, Inc. All Rights Reserved.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Networking Mehdi Einali Advanced Programming in Java 1.
Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. 1 Chapter 33 Networking.
Internet Socket Programing
COSC 541 Data Communication Systems & Computer Networks
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.
Network Programming Introduction
Programming in Java Text Books :
IS 4506 Server Configuration (HTTP Server)
Presentation transcript:

Network Programming 授課教師 : 詹益禎 中文課名 : 網路程式設計 學分時數 : 3學分\3小時 助教 :許聖宏 教室 : 32101 上課時間 : 13:55~16:50 (Tue.)

Network Programming - Fall 2008 Objective This course will provides practical guidance on the essential aspects of network programming with Java, including the concepts of Web, files, streams, threads, the use of varied sockets, non-blocking I/O, URLConnections, protocol handlers, content handlers and Remote method invocation. The aim is to enable students to pick up these vital skill and be capable of writing varied network programs with Java. NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Material Elliotte R. Harold, “Java Network Programming”, 3rd Edition, O’Reilly, 2004. H. M. Deitel and P. J. Deitel, “Java How to Program”, 6th Edition, Prentice Hall, 2004. Jan Graba, “An Introduction to network programming with Java”, 1st Edition, Addison Wesley, 2003. NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Grading Policy Quiz: 5 % (10/21) Midterm: 25% (11/11) Final: 30% (1/13) Homework: 40% Class Participation: 5~10% (bonus) NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Outline Why Networked Java Basic Network Concepts Basic Web Concepts Introduction to Java Programming Streams Threads Looking Up Internet Addresses URLs and URIs HTML in Swing Sockets for Clients Sockets for Servers Secure Sockets Non-Blocking I/O UDP Datagrams and Sockets Multicast Sockets Remote Method Invocation NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Why Networked Java What can a network program do ? Security But wait ! There’s more! NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Basic Network Concepts Networks The Layers of a Network IP, TCP, and UDP The Internet The Client/Server Model Internet Standards NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Basic Web Concepts URIs HTML, SGML, and XML HTTP MIME Media Types Server Side Programs NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Introduction to Java Programming The first Java program Classes and Objects Control Statements Files NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Streams Output Streams Input Streams Filter Streams Readers and Writers NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Threads Running Threads Returning Information from a Thread Synchronization Deadlock Thread Scheduling Thread Pools NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Looking Up Internet Addresses The InetAddress Class Inet4Address and Inet6Address The NetworkInterface Class Some Useful Programs NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 URLs and URIs The URL Class The URLEncoder and URLDecoder Classes The URI Class Proxies Communicating with Server-Side Programs Through GET Accessing Password-Protected Sites NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 HTML in Swing HTML on Components JEditorPane Parsing HTML Cookies NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Sockets for Clients Socket Basics Investigating Protocols with Telnet The Socket Class Socket Exceptions Socket Addresses Examples NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Sockets for Servers The ServerSocket Class Some Useful Servers NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Secure Sockets Secure Communications Creating Secure Client Sockets Methods of the SSLSocket Class Creating Secure Server Sockets Methods of the SSLServerSocket Class NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Non-Blocking I/O An Example Client An Example Server Buffers Channels Readiness Selection NCUE CSIE Y. C. Chan Network Programming - Fall 2008

UDP Datagrams and Sockets The UDP Protocol The DatagramPacket Class The DatagramSocket Class Some Useful Applications DatagramChannel NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Network Programming - Fall 2008 Multicast Sockets What Is a Multicast Socket? Working with Multicast Sockets Two Simple Examples NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Remote Method Invocation What Is Remote Method Invocation? Implementation Loading Classes at Runtime The java.rmi Package The java.rmi.registry Package The java.rmi.server Package NCUE CSIE Y. C. Chan Network Programming - Fall 2008

Welcome for joining the course. NCUE CSIE Y. C. Chan Network Programming - Fall 2008