Learning Outcomes. Networking. Sockets. TCP/IP Networks. Hostnames and DNS TCP/IP

Size: px
Start display at page:

Download "Learning Outcomes. Networking. Sockets. TCP/IP Networks. Hostnames and DNS TCP/IP"

Transcription

1 CP4044 Lecture 7 1 Networking Learning Outcomes To understand basic network terminology To be able to communicate using Telnet To be aware of some common network services To be able to implement client and server programs in Java using the following classes: Sockets Server sockets URL connections CP4044 Lecture 7 2 Clients TCP/IP Networks Network Server TCP/IP networks are based on a packetswitched, client/server model A server runs continuously, listening for requests from clients A client initiates a transaction with the server CP4044 Lecture 7 3 Sockets Common, basic communications mechanism. A bi-directional serial communication channel that associates two network connected computers. Acts like a pipe that allows data flow (via a stream) between the computers. As far as the programmer is concerned: Data is written to a socket in exactly the same way as it would be written to a file or display. It can then be read from the other end of the socket in exactly the same way as data is read from a file or keyboard. The intricacies of communications are handled within the socket class. As a Java programmer you can get by without knowing much about networking. CP4044 Lecture 7 4 TCP/IP IP (Internet Protocol) routes data to the destination Each connected to the network has a unique IP address, e.g TCP (Transmission Control Protocol) looks after the transmission of data. Provides a reliable, connection-oriented transport Delivers the data to a process identified by a port number A socket encapsulates the IP address of the destination the Port number of a process running on that CP4044 Lecture 7 5 Hostnames and DNS The host name is the name of the server. In a form that is easily remembered/used by humans e.g. The IP protocol actually needs an Internet address. e.g Host names are translated into IP addresses by DNS, the Domain Name System. Why have two ways of referring to the same host? Allows the host to be moved to a different only DNS entries need to be changed users unaffected Humans don't like using strings of numbers Computers like numbers allows easy implementation of hierarchies, subnets etc. CP4044 Lecture 7 6

2 CP4044 Lecture 7 7 Ports Ports allow s to provide multiple services. A server process listens on a specific (published) port for requests. Ports are identified by a -bit integer. Ports up to 24 are reserved for specific services Ports above are free for use. Used by clients, they are known as ephemeral ports and are allocated numbers starting at working down. Some Well-Known Port Numbers Port Name RFC Purpose Daytime 867 Gets the date and time 21 FTP 959 Transfers files 23 Telnet 854 Log on to a remote system 25 SMTP 821 Internet mail service 70 Gopher 36 Document archives 80 http 1945 Transfers Web resources 1 Pop Download Internet mail RFCs are obtained from CP4044 Lecture 7 8 Server A server process runs in a loop, continually listening for connection requests via its server socket. Once a connection request has been received the server process can then read data from the socket and process it. It then resumes listening for the next request. A common model is for the server process to create a new process to service the request, so that it can immediately resume listening for the next connection request. CP4044 Lecture 7 9 Client A client process attempts to create a socket connection to a remote server, usually in response to some sort of user initialised event. Client/server communication is similar to a telephone conversation: Somebody (the client) picks up a phone and dials a number. Another phone rings and somebody (the server) picks it up. A bi-directional conversation then continues until somebody hangs up. The phone number called is similar to an IP address. Ports are similar to different extension numbers. CP4044 Lecture 7 Telnet The Telnet command line tool uses the Telnet protocol ( based on TCP/IP, to allow a computer to act as a remote terminal on another anywhere on the Internet. It allows us to experiment with client/server systems. command prompt server port C:\> telnet clun.scit.wlv.ac.uk 80 CP4044 Lecture 7 11 World Wide Web Service HTTP Port 80 Web servers listen on port 80 for connections Once connected the client can send a number of simple commands. e.g. GET followed by the name of a resource. We can retrieve raw HTML using a Telnet client C:\> telnet 80 Trying Connected to clun.scit.wlv.ac.uk. Escape character is '^]'. GET <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " g/tr/html4/loose.dtd"> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=iso "> <title>school of Computing and IT</title> CP4044 Lecture 7

3 CP4044 Lecture 7 File Transfer Protocol Service FTP Port 21 http :// FTP servers listen on port 21 for connections USER and PASS commands are required before other commands can be issued. C:\> telnet ftp.scit.wlv.ac.uk 21 Trying Connected to clun.scit.wlv.ac.uk. Escape character is '^]'. 220 clun FTP server (Version 4.3 Mon Oct :20: BST 2000) ready. USER anonymous 331 Guest login ok, send address as password. PASS mel.ralph@wlv.ac.uk... Output omitted... QUIT 230- Goodbye Connection to host lost Network Programming with Java Java provides many classes for programming in a TCP/IP network environment These are in the java.net package Writing client/server programs which implement sockets, use these classes: java.net.serversocket java.net.socket A number of higher-level classes are available. We look at just one: java.net.url CP4044 Lecture 7 ServerSocket Class import java.net.*; Constructor: ServerSocket(int port) Methods include: Socket accept() void close() Use this class only for Server programs. As with all I/O, sockets can throw a variety of exceptions. CP4044 Lecture 7 Socket Class Constructor: Socket (String host, int port) Some methods: InputStream getinputstream() OutputStream getoutputstream() void setsotimeout(int timeout) void close() CP4044 Lecture import java.io.*; import java.net.*; A Simple Server public class Server { public static void main(string[] args) { String messagein, messageout; ServerSocket ssock = new ServerSocket(6789); while (true) { Socket connsock = ssock.accept(); BufferedReader innet = new BufferedReader( new InputStreamReader( connsock.getinputstream() )); DataOutputStream outnet = new DataOutputStream(connsock.getOutputStream()); messagein = innet.readline(); messageout = messagein.touppercase() + "\n"; outnet.writebytes(messageout); catch(ioexception e) { e.getmessage() CP4044 Lecture 7 Simple Server Line 7 The main method may throw exceptions. It requires an exception handler. Line 8 Constructs a ServerSocket object to listen on port Lines 9-21 Infinite loop to continually process requests. Line Waits (by blocking the thread) for a connection to be made to the ServerSocket. Once connected, the connsock socket can be used to communicate with the client. CP4044 Lecture 7

4 CP4044 Lecture 7 19 Simple Server Lines 11- Constructs a BuffererReader to read text data line-by-line from the client Lines - Constructs an OutputDataStream to send data to the client. Lines -20 Read a line of text from the client, convert it to upper case and send it back to the client import java.io.*; A Simple Client import java.net.*; ublic class Client { public static void main(string[] args) { BufferedReader kbd = new BufferedReader( new InputStreamReader(System.in)); Socket csock = new Socket("localhost", 6789); DataOutputStream outnet = new DataOutputStream(csock.getOutputStream()); BufferedReader innet = new BufferedReader( new InputStreamReader(csock.getInputStream())); String message = kbd.readline(); outnet.writebytes(message + "\n"); message = innet.readline(); System.out.println("Server sent: " + message); csock.close(); CP4044 Lecture 7 20 Simple Client Line 5 Exceptions may be thrown, so use exception handlers. Lines 6-7 Construct a BufferedReader to read lines of text from the keyboard. Lines 9- Construct a DataOutputStream to send data through the socket. (Note it is necessary to write raw bytes to the socket). Simple Client Line A line of text is read from the keyboard into the message variable. Line The text stored in the message variable is output through the socket. Line A line of text is read in through the socket. Lines 11- Construct a BufferedReader to read in lines of text through the socket. If binary data was required DataInputStream could have been used (to process primitive data types) or bytes could be read directly from the InputStream. CP4044 Lecture 7 21 Line The text that was read from the socket is printed out. Line The socket is closed, making it unavailable and freeing up resources. CP4044 Lecture 7 22 Testing Client/Server Progs When program testing, it is convenient to run both the server and the client on the same The local can be addressed with this reserved address: IP address: Hostname: localhost Run the Server first in one command prompt Then run the Client in a second command prompt Running Programs across the Network Run the Server and Client programs on separate networked s You will need to know the IP address of the that the Server is running on: ipconfig (for Windows) ifconfig (for Linux) Use this IP address when creating the socket in the Client program Will not be able to connect if the is running a firewall CP4044 Lecture 7 23 CP4044 Lecture 7 24

5 CP4044 Lecture 7 25 Universal Resource Locator (URL) Identifies a resource on the internet protocol host port If not specified uses the default for the given protocol, e.g. 80 for http path The location of the resource being requested URLs may contain other information such as user names, passwords and locations of resources within resources. See The Java URL class The URL class has a number of uses, including: Validating a url string entered by the user Will throw MalformedURLException if the string does not have valid syntax Parsing a url string Class provides methods to return the different parts of the url string getprotocol(), gethost(), getpath(), getport(), etc. Provides high level means of communication Do not need to create sockets openstream() CP4044 Lecture 7 26 Using the URL Class 01 import java.io.*; The URL class allows simplified 02 import java.net.*; communication for common protocols. 03 public class GetURL { 04 public static void main(string[] args) { 05 String line; int linecount = 0; URL url = new URL(args[0]); InputStream in = url.openstream(); InputStreamReader instr = new InputStreamReader(in); BufferedReader innet = new BufferedReader(inStr); while ((line = innet.readline())!= null) { linecount++; System.out.println(line); System.out.println("Lines read = " + linecount); CP4044 Lecture 7 27 URL Class Example Line 7 The main method may throw exceptions. Line 8 Uses the text that was passed as a parameter to this program to construct a URL object. Lines 9- Opens up an InputStream to read from the URL and attaches it to a BufferedReader to allow line-by-line data retrieval. Lines - Continually reads data from the BufferedReader until it fails to read any more (null is received). CP4044 Lecture 7 28 Validating and Parsing a URL 01 import java.net.*; 02 public class DisplayURL { 03 public static void main(string[] args) { 04 URL url = null; 05 url = new URL(args[0]); catch(malformedurlexception e) { System.out.println("Bad url"); System.exit(1); System.out.println(url); System.out.println("Protocol: "+url.getprotocol()); System.out.println("Path: "+url.getpath()); System.out.println("Host: "+url.gethost()); System.out.println("Port: "+url.getport()); System.out.println("Query: "+url.getquery()); System.out.println("File: "+url.getfile()); CP4044 Lecture 7 29 Summary Introduced some TCP/IP services Telnet - remote connection WWW and FTP services New Java classes introduced: java.net.serversocket java.net.socket java.net.url CP4044 Lecture 7 30

Creating a Simple, Multithreaded Chat System with Java

Creating a Simple, Multithreaded Chat System with Java Creating a Simple, Multithreaded Chat System with Java Introduction by George Crawford III In this edition of Objective Viewpoint, you will learn how to develop a simple chat system. The program will demonstrate

More information

Java Network. Slides prepared by : Farzana Rahman

Java Network. Slides prepared by : Farzana Rahman Java Network Programming 1 Important Java Packages java.net java.io java.rmi java.security java.lang TCP/IP networking I/O streams & utilities Remote Method Invocation Security policies Threading classes

More information

Lesson: All About Sockets

Lesson: All About Sockets All About Sockets http://java.sun.com/docs/books/tutorial/networking/sockets/index.html Page 1 sur 1 The Java TM Tutorial Start of Tutorial > Start of Trail Trail: Custom Networking Lesson: All About Sockets

More information

Question1-part2 What undesirable consequences might there be in having too long a DNS cache entry lifetime?

Question1-part2 What undesirable consequences might there be in having too long a DNS cache entry lifetime? CSCI 312 - DATA COMMUNICATIONS AND NETWORKS FALL, 2014 Assignment 4 Working as a group. Working in small gruops of 2-4 students. When you work as a group, you have to return only one home assignment per

More information

Division of Informatics, University of Edinburgh

Division of Informatics, University of Edinburgh CS1Bh Lecture Note 20 Client/server computing A modern computing environment consists of not just one computer, but several. When designing such an arrangement of computers it might at first seem that

More information

Building a Multi-Threaded Web Server

Building a Multi-Threaded Web Server Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous

More information

Limi Kalita / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 5 (3), 2014, 4802-4807. Socket Programming

Limi Kalita / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 5 (3), 2014, 4802-4807. Socket Programming Socket Programming Limi Kalita M.Tech Student, Department of Computer Science and Engineering, Assam Down Town University, Guwahati, India. Abstract: The aim of the paper is to introduce sockets, its deployment

More information

Assignment 4 Solutions

Assignment 4 Solutions CSCI 312 - DATA COMMUNICATIONS AND NETWORKS FALL, 2014 Assignment 4 Solutions Working as a pair Working in pairs. When you work as a pair you have to return only one home assignment per pair on a round.

More information

Network Communication

Network Communication Network Communication Outline Sockets Datagrams TCP/IP Client-Server model OSI Model Sockets Endpoint for bidirectional communication between two machines. To connect with each other, each of the client

More information

Network/Socket Programming in Java. Rajkumar Buyya

Network/Socket Programming in Java. Rajkumar Buyya Network/Socket Programming in Java Rajkumar Buyya Elements of C-S Computing a client, a server, and network Client Request Result Network Server Client machine Server machine java.net Used to manage: URL

More information

String sentence = new String(receivePacket.getData()); InetAddress IPAddress = receivepacket.getaddress(); int port = receivepacket.

String sentence = new String(receivePacket.getData()); InetAddress IPAddress = receivepacket.getaddress(); int port = receivepacket. 164 CHAPTER 2 APPLICATION LAYER connection requests, as done in TCPServer.java. If multiple clients access this application, they will all send their packets into this single door, serversocket. String

More information

Socket Programming in Java

Socket Programming in Java Socket Programming in Java Learning Objectives The InetAddress Class Using sockets TCP sockets Datagram Sockets Classes in java.net The core package java.net contains a number of classes that allow programmers

More information

NETWORK PROGRAMMING IN JAVA USING SOCKETS

NETWORK PROGRAMMING IN JAVA USING SOCKETS NETWORK PROGRAMMING IN JAVA USING SOCKETS Prerna Malik, Poonam Rawat Student, Dronacharya College of Engineering, Gurgaon, India Abstract- Network programming refers to writing programs that could be processed

More information

Network Technologies

Network Technologies Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:

More information

Mail User Agent Project

Mail User Agent Project Mail User Agent Project Tom Kelliher, CS 325 100 points, due May 4, 2011 Introduction (From Kurose & Ross, 4th ed.) In this project you will implement a mail user agent (MUA) that sends mail to other users.

More information

Java Network Programming. The java.net package contains the Socket class. This class speaks TCP (connection-oriented protocol).

Java Network Programming. The java.net package contains the Socket class. This class speaks TCP (connection-oriented protocol). Java Network Programming The java.net package contains the Socket class. This class speaks TCP (connection-oriented protocol). The DatagramSocket class uses UDP (connectionless protocol). The java.net.socket

More information

Network Programming using sockets

Network Programming using sockets Network Programming using sockets TCP/IP layers Layers Message Application Transport Internet Network interface Messages (UDP) or Streams (TCP) UDP or TCP packets IP datagrams Network-specific frames Underlying

More information

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) 2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) There are three popular applications for exchanging information. Electronic mail exchanges information between people and file

More information

Advanced Network Programming Lab using Java. Angelos Stavrou

Advanced Network Programming Lab using Java. Angelos Stavrou Advanced Network Programming Lab using Java Angelos Stavrou Table of Contents A simple Java Client...3 A simple Java Server...4 An advanced Java Client...5 An advanced Java Server...8 A Multi-threaded

More information

LESSON 3.6. 98-366 Networking Fundamentals. Understand TCP/IP

LESSON 3.6. 98-366 Networking Fundamentals. Understand TCP/IP Understand TCP/IP Lesson Overview In this lesson, you will learn about: TCP/IP Tracert Telnet Netstat Reserved addresses Local loopback IP Ping Pathping Ipconfig Protocols Anticipatory Set Experiment with

More information

Remote login (Telnet):

Remote login (Telnet): SFWR 4C03: Computer Networks and Computer Security Feb 23-26 2004 Lecturer: Kartik Krishnan Lectures 19-21 Remote login (Telnet): Telnet permits a user to connect to an account on a remote machine. A client

More information

Chapter 6 Virtual Private Networking Using SSL Connections

Chapter 6 Virtual Private Networking Using SSL Connections Chapter 6 Virtual Private Networking Using SSL Connections The FVS336G ProSafe Dual WAN Gigabit Firewall with SSL & IPsec VPN provides a hardwarebased SSL VPN solution designed specifically to provide

More information

Introduction to Java. Module 12: Networking (Java Sockets) Prepared by Costantinos Costa for EPL 233. ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 1

Introduction to Java. Module 12: Networking (Java Sockets) Prepared by Costantinos Costa for EPL 233. ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 1 Introduction to Java Module 12: Networking (Java Sockets) Prepared by Costantinos Costa for EPL 233 ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 1 What Is a Socket? A socket is one end-point of a two-way

More information

Agenda. Network Programming and Java Sockets. Introduction. Internet Applications Serving Local and Remote Users

Agenda. Network Programming and Java Sockets. Introduction. Internet Applications Serving Local and Remote Users Programming and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS) Laboratory Dept. of Computer Science and Software Engineering University of Melbourne, Australia http://www.cs.mu.oz.au/~raj

More information

DNS: Domain Names. DNS: Domain Name System. DNS: Root name servers. DNS name servers

DNS: Domain Names. DNS: Domain Name System. DNS: Root name servers. DNS name servers DNS: Domain Name System DNS: Domain Names People: many identifiers: SSN, name, Passport # Internet hosts, routers: Always: IP address (32 bit) - used for addressing datagrams Often: name, e.g., nifc14.wsu.edu

More information

Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.)

Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.) Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.) Objectives: Develop an understanding of UNIX and TCP/IP networking commands Ping another TCP/IP host Use traceroute to check

More information

Transport layer protocols. Message destination: Socket +Port. Asynchronous vs. Synchronous. Operations of Request-Reply. Sockets

Transport layer protocols. Message destination: Socket +Port. Asynchronous vs. Synchronous. Operations of Request-Reply. Sockets Transport layer protocols Interprocess communication Synchronous and asynchronous comm. Message destination Reliability Ordering Client Server Lecture 15: Operating Systems and Networks Behzad Bordbar

More information

Data Communication & Networks G22.2262-001

Data Communication & Networks G22.2262-001 Data Communication & Networks G22.2262-001 Session 10 - Main Theme Java Sockets Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 1 Agenda

More information

TP1 : Correction. Rappels : Stream, Thread et Socket TCP

TP1 : Correction. Rappels : Stream, Thread et Socket TCP Université Paris 7 M1 II Protocoles réseaux TP1 : Correction Rappels : Stream, Thread et Socket TCP Tous les programmes seront écrits en Java. 1. (a) Ecrire une application qui lit des chaines au clavier

More information

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet Review questions 1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet C Media access method D Packages 2 To which TCP/IP architecture layer

More information

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT) Internet Technologies World Wide Web (WWW) Proxy Server Network Address Translator (NAT) What is WWW? System of interlinked Hypertext documents Text, Images, Videos, and other multimedia documents navigate

More information

Socket Programming. Announcement. Lectures moved to

Socket Programming. Announcement. Lectures moved to Announcement Lectures moved to 150 GSPP, public policy building, right opposite Cory Hall on Hearst. Effective Jan 31 i.e. next Tuesday Socket Programming Nikhil Shetty GSI, EECS122 Spring 2006 1 Outline

More information

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet Basic Networking Concepts 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet 1 1. Introduction -A network can be defined as a group of computers and other devices connected

More information

Communicating with a Barco projector over network. Technical note

Communicating with a Barco projector over network. Technical note Communicating with a Barco projector over network Technical note MED20080612/00 12/06/2008 Barco nv Media & Entertainment Division Noordlaan 5, B-8520 Kuurne Phone: +32 56.36.89.70 Fax: +32 56.36.883.86

More information

Basic Network Configuration

Basic Network Configuration Basic Network Configuration 2 Table of Contents Basic Network Configuration... 25 LAN (local area network) vs WAN (wide area network)... 25 Local Area Network... 25 Wide Area Network... 26 Accessing the

More information

Java Programming: Sockets in Java

Java Programming: Sockets in Java Java Programming: Sockets in Java Manuel Oriol May 10, 2007 1 Introduction Network programming is probably one of the features that is most used in the current world. As soon as people want to send or

More information

Cisco Configuring Commonly Used IP ACLs

Cisco Configuring Commonly Used IP ACLs Table of Contents Configuring Commonly Used IP ACLs...1 Introduction...1 Prerequisites...2 Hardware and Software Versions...3 Configuration Examples...3 Allow a Select Host to Access the Network...3 Allow

More information

Chapter 6 Configuring the SSL VPN Tunnel Client and Port Forwarding

Chapter 6 Configuring the SSL VPN Tunnel Client and Port Forwarding Chapter 6 Configuring the SSL VPN Tunnel Client and Port Forwarding This chapter describes the configuration for the SSL VPN Tunnel Client and for Port Forwarding. When a remote user accesses the SSL VPN

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

Network Configuration Settings

Network Configuration Settings Network Configuration Settings Many small businesses already have an existing firewall device for their local network when they purchase Microsoft Windows Small Business Server 2003. Often, these devices

More information

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 2057-15 First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 7-25 September 2009 TCP/IP Networking Abhaya S. Induruwa Department

More information

Application Development with TCP/IP. Brian S. Mitchell Drexel University

Application Development with TCP/IP. Brian S. Mitchell Drexel University Application Development with TCP/IP Brian S. Mitchell Drexel University Agenda TCP/IP Application Development Environment Client/Server Computing with TCP/IP Sockets Port Numbers The TCP/IP Application

More information

AVRO - SERIALIZATION

AVRO - SERIALIZATION http://www.tutorialspoint.com/avro/avro_serialization.htm AVRO - SERIALIZATION Copyright tutorialspoint.com What is Serialization? Serialization is the process of translating data structures or objects

More information

JAVA - FILES AND I/O

JAVA - FILES AND I/O http://www.tutorialspoint.com/java/java_files_io.htm JAVA - FILES AND I/O Copyright tutorialspoint.com The java.io package contains nearly every class you might ever need to perform input and output I/O

More information

The TCP/IP Reference Model

The TCP/IP Reference Model The TCP/IP Reference Model The TCP/IP Model Comparison to OSI Model Example Networks The TCP/IP Model Origins from ARPANET, DoD research network ARPA - Advanced Research Projects Agency Reliability was

More information

µtasker Document FTP Client

µtasker Document FTP Client Embedding it better... µtasker Document FTP Client utaskerftp_client.doc/1.01 Copyright 2012 M.J.Butcher Consulting Table of Contents 1. Introduction...3 2. FTP Log-In...4 3. FTP Operation Modes...4 4.

More information

Intranet, Extranet, Firewall

Intranet, Extranet, Firewall Indian Institute of Technology Kharagpur Intranet, Extranet, Firewall Prof. Indranil Sen Gupta Dept. of Computer Science & Engg. I.I.T. Kharagpur, INDIA Lecture 31: Intranet, Extranet, Firewall On completion,

More information

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2 Network-Oriented Software Development Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2 Topics Layering TCP/IP Layering Internet addresses and port numbers Encapsulation

More information

INPUT AND OUTPUT STREAMS

INPUT AND OUTPUT STREAMS INPUT AND OUTPUT The Java Platform supports different kinds of information sources and information sinks. A program may get data from an information source which may be a file on disk, a network connection,

More information

ichip FTP Client Theory of Operation Version 1.32

ichip FTP Client Theory of Operation Version 1.32 ichip FTP Client Theory of Operation Version 1.32 November 2003 Introduction The FTP protocol is described in RFC 959. General FTP (File Transfer Protocol) is defined as a protocol for file transfer between

More information

WS_FTP Server. User s Guide. Software Version 3.1. Ipswitch, Inc.

WS_FTP Server. User s Guide. Software Version 3.1. Ipswitch, Inc. User s Guide Software Version 3.1 Ipswitch, Inc. Ipswitch, Inc. Phone: 781-676-5700 81 Hartwell Ave Web: http://www.ipswitch.com Lexington, MA 02421-3127 The information in this document is subject to

More information

Using IPM to Measure Network Performance

Using IPM to Measure Network Performance CHAPTER 3 Using IPM to Measure Network Performance This chapter provides details on using IPM to measure latency, jitter, availability, packet loss, and errors. It includes the following sections: Measuring

More information

URLs and HTTP. ICW Lecture 10 Tom Chothia

URLs and HTTP. ICW Lecture 10 Tom Chothia URLs and HTTP ICW Lecture 10 Tom Chothia This Lecture The two basic building blocks of the web: URLs: Uniform Resource Locators HTTP: HyperText Transfer Protocol Uniform Resource Locators Many Internet

More information

EXPLORER. TFT Filter CONFIGURATION

EXPLORER. TFT Filter CONFIGURATION EXPLORER TFT Filter Configuration Page 1 of 9 EXPLORER TFT Filter CONFIGURATION Thrane & Thrane Author: HenrikMøller Rev. PA4 Page 1 6/15/2006 EXPLORER TFT Filter Configuration Page 2 of 9 1 Table of Content

More information

SSL VPN Portal Options

SSL VPN Portal Options 1. ProSecure UTM Quick Start Guide This quick start guide describes how to use the SSL VPN Wizard to configure SSL VPN portals on the ProSecure Unified Threat Management (UTM) Appliance. The Secure Sockets

More information

Virtual Server and DDNS. Virtual Server and DDNS. For BIPAC 741/743GE

Virtual Server and DDNS. Virtual Server and DDNS. For BIPAC 741/743GE Virtual Server and DDNS For BIPAC 741/743GE August, 2003 1 Port Number In TCP/IP and UDP networks, a port is a 16-bit number, used by the host-to-host protocol to identify to which application program

More information

F-SECURE MESSAGING SECURITY GATEWAY

F-SECURE MESSAGING SECURITY GATEWAY F-SECURE MESSAGING SECURITY GATEWAY DEFAULT SETUP GUIDE This guide describes how to set up and configure the F-Secure Messaging Security Gateway appliance in a basic e-mail server environment. AN EXAMPLE

More information

WRITING DATA TO A BINARY FILE

WRITING DATA TO A BINARY FILE WRITING DATA TO A BINARY FILE TEXT FILES VS. BINARY FILES Up to now, we have looked at how to write and read characters to and from a text file. Text files are files that contain sequences of characters.

More information

Terminology. Internet Addressing System

Terminology. Internet Addressing System Terminology A local area network (LAN) is a computer network covering a small physical area, like a home, office, or small group of buildings, such as a school, or an airport. The defining characteristics

More information

Appendix. Web Command Error Codes. Web Command Error Codes

Appendix. Web Command Error Codes. Web Command Error Codes Appendix Web Command s Error codes marked with * are received in responses from the FTP server, and then returned as the result of FTP command execution. -501 Incorrect parameter type -502 Error getting

More information

Application Monitoring using SNMPc 7.0

Application Monitoring using SNMPc 7.0 Application Monitoring using SNMPc 7.0 SNMPc can be used to monitor the status of an application by polling its TCP application port. Up to 16 application ports can be defined per icon. You can also configure

More information

Volume SYSLOG JUNCTION. User s Guide. User s Guide

Volume SYSLOG JUNCTION. User s Guide. User s Guide Volume 1 SYSLOG JUNCTION User s Guide User s Guide SYSLOG JUNCTION USER S GUIDE Introduction I n simple terms, Syslog junction is a log viewer with graphing capabilities. It can receive syslog messages

More information

CISC 4700 L01 Network & Client- Server Programming Spring 2016. Harold, Chapter 8: Sockets for Clients

CISC 4700 L01 Network & Client- Server Programming Spring 2016. Harold, Chapter 8: Sockets for Clients CISC 4700 L01 Network & Client- Server Programming Spring 2016 Harold, Chapter 8: Sockets for Clients Datagram: Internet data packet Header: accounting info (e.g., address, port of source and dest) Payload:

More information

Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols

Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols E-Commerce Infrastructure II: the World Wide Web The Internet and the World Wide Web are two separate but related things Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 1 Outline The Internet and

More information

Updating MNS-BB CUSTOMER SUPPORT INFORMATION PK012906

Updating MNS-BB CUSTOMER SUPPORT INFORMATION PK012906 Updating MNS-BB PK012906 CUSTOMER SUPPORT INFORMATION Order toll-free in the U.S. 24 hours, 7 A.M. Monday to midnight Friday: 877-877-BBOX FREE technical support, 24 hours a day, 7 days a week: Call 724-746-5500

More information

File Transfer Examples. Running commands on other computers and transferring files between computers

File Transfer Examples. Running commands on other computers and transferring files between computers Running commands on other computers and transferring files between computers 1 1 Remote Login Login to remote computer and run programs on that computer Once logged in to remote computer, everything you

More information

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, 2012. Page 1

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, 2012. Page 1 Sage 300 ERP Online (Formerly Sage ERP Accpac Online) Mac Resource Guide Updated June 1, 2012 Page 1 Table of Contents 1.0 Introduction... 3 2.0 Getting Started with Sage 300 ERP Online using a Mac....

More information

NETWORKING FEATURES OF THE JAVA PROGRAMMING LANGUAGE

NETWORKING FEATURES OF THE JAVA PROGRAMMING LANGUAGE 50-20-44 DATA COMMUNICATIONS MANAGEMENT NETWORKING FEATURES OF THE JAVA PROGRAMMING LANGUAGE John P. Slone INSIDE Java s Target Environment, Networking Basics, Java Networking Primitives, Connection-Oriented

More information

Sage ERP Accpac Online

Sage ERP Accpac Online Sage ERP Accpac Online Mac Resource Guide Thank you for choosing Sage ERP Accpac Online. This Resource Guide will provide important information and instructions on how you can get started using your Mac

More information

Design Notes for an Efficient Password-Authenticated Key Exchange Implementation Using Human-Memorable Passwords

Design Notes for an Efficient Password-Authenticated Key Exchange Implementation Using Human-Memorable Passwords Design Notes for an Efficient Password-Authenticated Key Exchange Implementation Using Human-Memorable Passwords Author: Paul Seymer CMSC498a Contents 1 Background... 2 1.1 HTTP 1.0/1.1... 2 1.2 Password

More information

cnds@napier Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

cnds@napier Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer) Slide 1 Introduction In today s and next week s lecture we will cover two of the most important areas in networking and the Internet: IP and TCP. These cover the network and transport layer of the OSI

More information

Socket-based Network Communication in J2SE and J2ME

Socket-based Network Communication in J2SE and J2ME Socket-based Network Communication in J2SE and J2ME 1 C/C++ BSD Sockets in POSIX POSIX functions allow to access network connection in the same way as regular files: There are special functions for opening

More information

Using TestLogServer for Web Security Troubleshooting

Using TestLogServer for Web Security Troubleshooting Using TestLogServer for Web Security Troubleshooting Topic 50330 TestLogServer Web Security Solutions Version 7.7, Updated 19-Sept- 2013 A command-line utility called TestLogServer is included as part

More information

File Transfer Protocol (FTP) & SSH

File Transfer Protocol (FTP) & SSH http://xkcd.com/949/ File Transfer Protocol (FTP) & SSH Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Some materials copyright 1996-2012 Addison-Wesley J.F Kurose and K.W.

More information

Network-based Applications. Pavani Diwanji David Brown JavaSoft

Network-based Applications. Pavani Diwanji David Brown JavaSoft Network-based Applications Pavani Diwanji David Brown JavaSoft Networking in Java Introduction Datagrams, Multicast TCP: Socket, ServerSocket Issues, Gotchas URL, URLConnection Protocol Handlers Q & A

More information

There are many different ways in which we can connect to a remote machine over the Internet. These include (but are not limited to):

There are many different ways in which we can connect to a remote machine over the Internet. These include (but are not limited to): Remote Connection Protocols There are many different ways in which we can connect to a remote machine over the Internet. These include (but are not limited to): - telnet (typically to connect to a machine

More information

3.1 RS-232/422/485 Pinout:PORT1-4(RJ-45) RJ-45 RS-232 RS-422 RS-485 PIN1 TXD PIN2 RXD PIN3 GND PIN4 PIN5 T+ 485+ PIN6 T- 485- PIN7 R+ PIN8 R-

3.1 RS-232/422/485 Pinout:PORT1-4(RJ-45) RJ-45 RS-232 RS-422 RS-485 PIN1 TXD PIN2 RXD PIN3 GND PIN4 PIN5 T+ 485+ PIN6 T- 485- PIN7 R+ PIN8 R- MODEL ATC-2004 TCP/IP TO RS-232/422/485 CONVERTER User s Manual 1.1 Introduction The ATC-2004 is a 4 Port RS232/RS485 to TCP/IP converter integrated with a robust system and network management features

More information

Connecting with Computer Science, 2e. Chapter 5 The Internet

Connecting with Computer Science, 2e. Chapter 5 The Internet Connecting with Computer Science, 2e Chapter 5 The Internet Objectives In this chapter you will: Learn what the Internet really is Become familiar with the architecture of the Internet Become familiar

More information

Ipswitch WS_FTP Server

Ipswitch WS_FTP Server Ipswitch WS_FTP Server User s Guide Software Version 5.0 Ipswitch, Inc Ipswitch Inc. Web: http://www.ipswitch.com 10 Maguire Road Phone: 781.676.5700 Lexington, MA Fax: 781.676.5710 02421 Copyrights The

More information

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) 2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) There are three popular applications for exchanging information. Electronic mail exchanges information between people and file

More information

Revised: 14-Nov-07. Inmarsat Fleet from Stratos MPDS Firewall Service Version 1.0

Revised: 14-Nov-07. Inmarsat Fleet from Stratos MPDS Firewall Service Version 1.0 Revised: 14-Nov-07 Inmarsat Fleet from Stratos MPDS Firewall Service Version 1.0 2 / 16 This edition of the User Manual has been updated with information available at the date of issue. This edition supersedes

More information

Web Browsing Examples. How Web Browsing and HTTP Works

Web Browsing Examples. How Web Browsing and HTTP Works How Web Browsing and HTTP Works 1 1 2 Lets consider an example that shows how web browsing and HTTP work. The example will cover a simple, but very common case. There are many more details of HTTP that

More information

The PostBase Connectivity Wizard

The PostBase Connectivity Wizard The PostBase Connectivity Wizard The PostBase Connectivity Wizard allows you to easily set up your PostBase postage machine to suit your organization s arrangements. This document will guide you through

More information

Transparent Redirection of Network Sockets 1

Transparent Redirection of Network Sockets 1 Transparent Redirection of Network Sockets 1 Timothy S. Mitrovich, Kenneth M. Ford, and Niranjan Suri Institute for Human & Machine Cognition University of West Florida {tmitrovi,kford,nsuri}@ai.uwf.edu

More information

Networks 3. 2015 University of Stirling CSCU9B1 Essential Skills for the Information Age. Content

Networks 3. 2015 University of Stirling CSCU9B1 Essential Skills for the Information Age. Content Networks 3 Lecture Networks 3/Slide 1 Content What is a communications protocol? Network protocols TCP/IP High-level protocols Firewalls Network addresses Host name IP address Domain name system (DNS)

More information

3.5. cmsg Developer s Guide. Data Acquisition Group JEFFERSON LAB. Version

3.5. cmsg Developer s Guide. Data Acquisition Group JEFFERSON LAB. Version Version 3.5 JEFFERSON LAB Data Acquisition Group cmsg Developer s Guide J E F F E R S O N L A B D A T A A C Q U I S I T I O N G R O U P cmsg Developer s Guide Elliott Wolin wolin@jlab.org Carl Timmer timmer@jlab.org

More information

TCP/IP Programming. Joel Snyder, Opus1 Geoff Bryant, Process Software

TCP/IP Programming. Joel Snyder, Opus1 Geoff Bryant, Process Software TCP/IP Programming Joel Snyder, Opus1 Geoff Bryant, Process Software Portions Copyright 1996 TGV Software, Inc., Copyright 1996 Process Software Corp. Copyright 1996 Opus1 Course Roadmap Slide 2 NM055

More information

DDNS Management System User Manual V1.0

DDNS Management System User Manual V1.0 DDNS Management System User Manual V1.0 1 03/01/2012 Table of Contents 1. Introduction.3 2. Network Configuration 3 2.1. Configuring DDNS locally through DVR Menu..3 2.2. Configuring DDNS through Internet

More information

Configuring Health Monitoring

Configuring Health Monitoring CHAPTER 6 This chapter describes how to configure the health monitoring on the CSM and contains these sections: Configuring Probes for Health Monitoring, page 6-1 Configuring Route Health Injection, page

More information

Quick Scan Features Setup Guide

Quick Scan Features Setup Guide Xerox WorkCentre 7132 Quick Scan Features Setup Guide 701P45042 This guide includes instructions for: Scan to Email on page 1 Scan to Mailbox Setup (Optional) on page 5 Network Scanning Setup (Optional)

More information

The difference between TCP/IP, UDP/IP and Multicast sockets. How servers and clients communicate over sockets

The difference between TCP/IP, UDP/IP and Multicast sockets. How servers and clients communicate over sockets Network Programming Topics in this section include: What a socket is What you can do with a socket The difference between TCP/IP, UDP/IP and Multicast sockets How servers and clients communicate over sockets

More information

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used:

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used: Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research

More information

Socket programming. Complement for the programming assignment INFO-0010

Socket programming. Complement for the programming assignment INFO-0010 Socket programming Complement for the programming assignment INFO-0010 Outline Socket definition Briefing on the Socket API A simple example in Java Multi-threading and Synchronization HTTP protocol Debugging

More information

Device Log Export ENGLISH

Device Log Export ENGLISH Figure 14: Topic Selection Page Device Log Export This option allows you to export device logs in three ways: by E-Mail, FTP, or HTTP. Each method is described in the following sections. NOTE: If the E-Mail,

More information

1 Recommended Readings. 2 Resources Required. 3 Compiling and Running on Linux

1 Recommended Readings. 2 Resources Required. 3 Compiling and Running on Linux CSC 482/582 Assignment #2 Securing SimpleWebServer Due: September 29, 2015 The goal of this assignment is to learn how to validate input securely. To this purpose, students will add a feature to upload

More information

Different types of resources are specified by their scheme, each different pattern is implemented by a specific protocol:

Different types of resources are specified by their scheme, each different pattern is implemented by a specific protocol: Chapter 8 In this chapter we study the features of Java that allows us to work directly at the URL (Universal Resource Locator) and we are particularly interested in HTTP (Hyper Text Transfer Protocol).

More information

Chakchai So-In, Ph.D.

Chakchai So-In, Ph.D. Application Layer Functionality and Protocols Chakchai So-In, Ph.D. Khon Kaen University Department of Computer Science Faculty of Science, Khon Kaen University 123 Mitaparb Rd., Naimaung, Maung, Khon

More information

Chapter 6. About This Chapter. Before You Begin. Windows 2000 Naming Schemes. [Previous] [Next]

Chapter 6. About This Chapter. Before You Begin. Windows 2000 Naming Schemes. [Previous] [Next] [Previous] [Next] Chapter 6 R e s o l v i n g N e t w o r k H o s t N a m e s About This Chapter Both clients and servers on a network must resolve the user-friendly host names to the Internet Protocol

More information

5. At the Windows Component panel, select the Internet Information Services (IIS) checkbox, and then hit Next.

5. At the Windows Component panel, select the Internet Information Services (IIS) checkbox, and then hit Next. Installing IIS on Windows XP 1. Start 2. Go to Control Panel 3. Go to Add or RemovePrograms 4. Go to Add/Remove Windows Components 5. At the Windows Component panel, select the Internet Information Services

More information

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used: Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research

More information