Computer Science 335

Download Report

Transcript Computer Science 335

Computer Science 335
Objectives
and
Main Areas of Coverage
Communication is fundamentally complicated.
transmitter
MEDIUM
I told you before!
I didn’t understand.
receiver
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.
Principles Apply At Many Levels
On a computer motherboard
Video
Card
CPU
Memory
(Main Bus)
Sound
Card
Between Devices on a computer
Between computers on a network
Between Computers on Different Networks
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
What are the problems to address?
1.
2.
3.
4.
5.
6.
7.
Is the other computer ready?
How does it know I’m sending data?
How does it know the begin/end of my message?
What if an error occurs?
How does the other computer know?
What if I send too fast?
How do I know when the other computer recovers?
NONE ARE NETWORKING
PROBLEMS
A
B
C
How Does it Know Which One?
A Network Concern!
A
B
D
C
E
F
How Do We Know If It Is On THIS Network?
An INTERNetworking Problem!
Basic Principles
•
•
•
•
•
•
•
Synchronization (beginning and ending)
Timing (rates of transmission / flow control)
Encoding
Error detection and correction
Identification
Routing
Efficiency
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
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.