Introduction and Overview Prof. Chuan-Ming Liu Computer Science and - - PowerPoint PPT Presentation

introduction and overview
SMART_READER_LITE
LIVE PREVIEW

Introduction and Overview Prof. Chuan-Ming Liu Computer Science and - - PowerPoint PPT Presentation

Mobile Computing & Software Engineering Lab Introduction and Overview Prof. Chuan-Ming Liu Computer Science and Information Engineering National Taipei University of Technology Taipei, TAIWAN NTUT, TAIWAN 1 Mobile Computing &


slide-1
SLIDE 1

NTUT, TAIWAN 1

Mobile Computing & Software Engineering Lab

Introduction and Overview

  • Prof. Chuan-Ming Liu

Computer Science and Information Engineering National Taipei University of Technology Taipei, TAIWAN

slide-2
SLIDE 2

NTUT, TAIWAN 2

Mobile Computing & Software Engineering Lab

Brief History

Network

Group of connected, communicating devices

internet v.s. Internet

two or more networks that communicate (internet, lowercase i) hundreds of thousands interconnected networks (Internet, uppercase I)

slide-3
SLIDE 3

NTUT, TAIWAN 3

Mobile Computing & Software Engineering Lab

Time Line

The following is a list of important Internet events in chronological order:

  • 1969. Four-node ARPANET established.
  • 1970. ARPA hosts implement NCP.
  • 1973. Development of TCP/IP suite begins.
  • 1977. An internet tested using TCP/IP.
  • 1978. UNIX distributed to academic sites.
slide-4
SLIDE 4

NTUT, TAIWAN 4

Mobile Computing & Software Engineering Lab

Time Line (cont.)

  • 1981. CSNET established. (NSF sponsored)
  • 1983. TCP/IP becomes the official protocol
  • 1983. MILNET was born.
  • 1986. NSFNET established. (NSF)
  • 1990. ARPANET replaced by NSFNET.
  • 1995. NSFNET became a research network.
  • 1995. ISPs started.
slide-5
SLIDE 5

NTUT, TAIWAN 5

Mobile Computing & Software Engineering Lab

Internet today

slide-6
SLIDE 6

NTUT, TAIWAN 6

Mobile Computing & Software Engineering Lab

Applications using TCP/IP

TCP/IP provides the technology that glues internets together Applications using TCP/IP

WWW browsing Chat rooms Streaming (webcasting) Etc…

slide-7
SLIDE 7

NTUT, TAIWAN 7

Mobile Computing & Software Engineering Lab

Designing Applications in Distributed Environments

Integrating the internet

Programmers need to know the principles and techniques to design and implement distributed applications

One primary goal for distributed computing: transparency

slide-8
SLIDE 8

NTUT, TAIWAN 8

Mobile Computing & Software Engineering Lab

Protocols and Standards

Protocols – rules Standards – agreed-upon rules

slide-9
SLIDE 9

NTUT, TAIWAN 9

Mobile Computing & Software Engineering Lab

Protocols

Entity

Anything capable of sanding or receiving information

Protocol is a set of rules that governs data communication Elements of a protocol

Syntax (what) Semantics (how) Timing (when)

slide-10
SLIDE 10

NTUT, TAIWAN 10

Mobile Computing & Software Engineering Lab

Standards

Guidelines to manufacturers, vendors, government agencies, and other service providers Two categories for data communication standards:

De facto (fact or convention) De jure (law or regulation)

slide-11
SLIDE 11

NTUT, TAIWAN 11

Mobile Computing & Software Engineering Lab

Standards Creation Standards Creation Committees Committees

International Standards Organization (ISO) International Telecommunications Union– Telecommunication Standards Sector (ITU-T) American National Standards Institute (ANSI) Institute of Electrical and Electronics Engineers (IEEE) Electronic Industries Association (EIA)

slide-12
SLIDE 12

NTUT, TAIWAN 12

Mobile Computing & Software Engineering Lab

Internet Standards

An Internet standard is a thoroughly tested specification that is useful to and adhered to by those who work with the Internet

Internet draft: no official status Request for Comments (RFC)

slide-13
SLIDE 13

NTUT, TAIWAN 13

Mobile Computing & Software Engineering Lab

Maturity levels of an RFC

slide-14
SLIDE 14

NTUT, TAIWAN 14

Mobile Computing & Software Engineering Lab

Requirement levels of an RFC

slide-15
SLIDE 15

NTUT, TAIWAN 15

Mobile Computing & Software Engineering Lab

RFCs can be found at http://www.faqs.org/rfcs

slide-16
SLIDE 16

NTUT, TAIWAN 16

Mobile Computing & Software Engineering Lab

(Non)Standard Application Protocols

Standard application protocols

Documented Standardized Adopted as part of the official TCP/IP protocol suite File transfer, remote login, e-mail

Nonstandard application protocols

Private use

slide-17
SLIDE 17

NTUT, TAIWAN 17

Mobile Computing & Software Engineering Lab

Example

Remote login protocol– TELNET Define

format of data sent to the remote machine format of message that the remote machine sends back

Specify

encoding character data for transmission messages to control the session or abort a remote operation

slide-18
SLIDE 18

NTUT, TAIWAN 18

Mobile Computing & Software Engineering Lab

Example – TELNET

Usage

telnet machine

Actions

Connection: local window asks to connect to the remote machine Two-way communication after connection Send each keystroke Display each character on the user’s window

slide-19
SLIDE 19

NTUT, TAIWAN 19

Mobile Computing & Software Engineering Lab

Example – TELNET

[cmliu@csie ~]$ telnet csie.ntut.edu.tw Trying 140.124.180.1... Connected to csie.ntut.edu.tw (140.124.180.1). Escape character is '^]'. Fedora Core release 3 (Heidelberg) Kernel 2.6.10-1.741_FC3smp on an i686 login:

slide-20
SLIDE 20

NTUT, TAIWAN 20

Mobile Computing & Software Engineering Lab

Alternative Service using TELNET

TCP/IP uses protocol port numbers to identify application services Remote login service is assigned to port 23 The default service for TELNET protocol is the remote login service To specify the service, one should use

telnet machine port#

slide-21
SLIDE 21

NTUT, TAIWAN 21

Mobile Computing & Software Engineering Lab

Alternative Service using TELNET

<cmliu@sun:~>[43]telnet purdue.edu 13 Trying 128.210.11.29... Connected to purdue.edu. Escape character is '^]'. Tue Feb 18 09:32:36 2003 Connection closed by foreign host.

daytime service

slide-22
SLIDE 22

NTUT, TAIWAN 22

Mobile Computing & Software Engineering Lab

Alternative Service using TELNET

Finger service Port number:? On-line testing

79

slide-23
SLIDE 23

NTUT, TAIWAN 23

Mobile Computing & Software Engineering Lab

Application Flexibility

Single piece of software can be used to access more than one service. Protocol design is to find fundamental abstractions that can be used in multiple applications Use standard protocol as possible

slide-24
SLIDE 24

NTUT, TAIWAN 24

Mobile Computing & Software Engineering Lab

Application Flexibility

TELNET protocol summary The TELNET protocol provides maximal flexibility because it

  • nly

defines interactive communication and not the details of the service accessed. TELNET can be used as the communication mechanism for many interactive services besides remote login.

slide-25
SLIDE 25

NTUT, TAIWAN 25

Mobile Computing & Software Engineering Lab

Provider’s Perspective

Concurrence processing complicates network software design, implementation, and maintenance Providing concurrent access to application service is important and difficulty; we will discuss concurrent implementation of application protocol software in this course.