22
Computer Science 502 Objectives and Main Areas of Coverage

Computer Science 502 Objectives and Main Areas of Coverage

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computer Science 502 Objectives and Main Areas of Coverage

Computer Science 502

Objectives

and

Main Areas of Coverage

Page 2: Computer Science 502 Objectives and Main Areas of Coverage

• Basic Concepts

• OSI

• Analysis of Networks

• Client-servers

Page 3: Computer Science 502 Objectives and Main Areas of Coverage

Basic Concepts

Page 4: Computer Science 502 Objectives and Main Areas of Coverage

I told you before!

I didn’t understand.

Communication is fundamentally complicated.

transmitter receiverMEDIUM

Page 5: Computer Science 502 Objectives and Main Areas of Coverage

Consider the Problems of Human Communication

Computers Have Many of the Same Problems! • Receiver is unable to understand the message

• Transmitter speaks when receiver not ready

• Receiver doesn’t understand the message– not the type of message expected– not the right language– speaks too fast/slow

• etc.

Page 6: Computer Science 502 Objectives and Main Areas of Coverage

Principles Apply At Many Levels

CPU

Memory

Video Card

Sound Card

(Main Bus)

On a computer motherboard

MainMemory

DiskDrive

Page 7: Computer Science 502 Objectives and Main Areas of Coverage

Between Devices on a computer

Page 8: Computer Science 502 Objectives and Main Areas of Coverage

Between computers on a network

Page 9: Computer Science 502 Objectives and Main Areas of Coverage

Between Computers on Different Networks

Page 10: Computer Science 502 Objectives and Main Areas of Coverage

Distinguishing Problems

1. Direct Communication•Person to Person•Computer to Computer (serial cable)

2. Network Communication•Two Machines Interconnected with others

3. InterNetwork Communication•Networks Connected

Page 11: Computer Science 502 Objectives and Main Areas of Coverage

What are the problems to address?

1. Is the other computer ready?2. How does it know I’m sending data?3. How does it know the begin/end of my message?4. What if an error occurs?5. How does the other computer know?6. What if I send too fast?7. How do I know when the other computer recovers?

NONE ARE NETWORKING PROBLEMS

Page 12: Computer Science 502 Objectives and Main Areas of Coverage

How Does it Know Which One?

A Network Concern!

A CB

Page 13: Computer Science 502 Objectives and Main Areas of Coverage

A CB

D FE

How Do We Know If It Is On THIS Network?

An INTERNetworking Problem!

Page 14: Computer Science 502 Objectives and Main Areas of Coverage

Basic Principles

• Synchronization (beginning and ending)

• Timing (rates of transmission / flow control)

• Encoding

• Error detection and correction

• Identification

• Routing

• Efficiency

Page 15: Computer Science 502 Objectives and Main Areas of Coverage

Complexity of Material

• Those without experience are NOT at a serious disadvantage

• No single element is overwhelming• Proper integration of components is

extremely difficult• A framework for building an understanding

is critical like a foundation for building a house

Page 16: Computer Science 502 Objectives and Main Areas of Coverage

Principles Repeat

• Many issues occur in a number of places

• Understanding it once can be leveraged into the understanding of numerous features

• Keep these issues at the forefront of learning

• Many of your experiences will be similar but the wrong one. Be careful. Ask questions.

• OSI model is not only a tool for design but a tool for organizing understanding

Page 17: Computer Science 502 Objectives and Main Areas of Coverage

OSI Model

Page 18: Computer Science 502 Objectives and Main Areas of Coverage

What is the OSI model?

• A framework for design presented by International Standards Organization (ISO)

• A classical study of layered design

• A framework for LEARNING how the process of computer communication works

• Ultimate objective is to let any two PROGRAMS on any two COMPUTERS in the world talk to one another.

Page 19: Computer Science 502 Objectives and Main Areas of Coverage

Evaluating Network Performance

Page 20: Computer Science 502 Objectives and Main Areas of Coverage

Performance

• Evaluation of network performance has two foci– Using mathematical tools/analysis to solve general

problems• Limited use of statistics and calculus

– Using simulation tools to understand more complex problems

• Use of a network simulation software package

• Free to students

• Opnet

• Simulation will be a major project

Page 21: Computer Science 502 Objectives and Main Areas of Coverage

Client Server Software

Page 22: Computer Science 502 Objectives and Main Areas of Coverage

Developing Network Systems

• Significant % of current development is client–server based.

• How to develop clients and servers– Development with java/c++– Major project

• Intro to other techniques– CGIs with php or javascript– J2EE and .NET