computer communication and distributed algorithms 202-2-1131 eyal cohen:...
TRANSCRIPT
Computer Communication and
Distributed Algorithms
202-2-1131
Eyal Cohen: [email protected]
Computer Communication and Distributed Algorithms (Fall 2012-13)
1
Administration 1
Practical sessions: Mondays 12:00-13:00.
Books: Computer Networking: A Top-Down
Approach Featuring the Internet / Kurose-Ross
Computer Networks / Tanenbaum
Computer Communication and Distributed Algorithms (Fall 2012-13)
2
Administration 2
Practical session: Room 104 Building 28. Office Hors: Room 504 Building 37.
Tuesday 14:00-16:00 or scheduled by Email
Assignments are given in the lectures.
Computer Communication and Distributed Algorithms(Fall 2012-13)
3
Session Objectives
Learn the basics of data communication and computer
networks. ( ללמוד את הבסיס של תקשורת נתונים( ורשתות מחשב
To understand the main concepts and principles of
communication. ( להבין את המושגים העיקריים ואת( העקרונות של תקשורת
To present modern communication networks and their
applications. ( להציג את רשתות התקשורת המודרניות(והיישומיים שלהם
Computer Communication and Distributed Algorithms (Fall 2012-13)
4
Session Plan IntroductionAn initial introduction to communication and a historical review of the network world.The (OSI) layered network architecture. Physical LayerThe electric signals that allow data transfer and principles of communication systems.
Data Link LayerCollection of data into blocks. Error checking and fixing. Protocols.
Network LayerOSI and Internet approach. Designing networks and protocols. IP(v4, v6). Routing Protocols
Layer TransportOSI and Internet approach. Designing and interface. TCP, UDP.
Application LayerOSI and Internet approach. Support of the network applications: FTP, SMTP, HTTP, Mail, DNS
Distributed Systems
Computer Communication and Distributed Algorithms (Fall 2012-13)
5
Network - Definition
היא אוסף של רשת מחשבים שמדברים זה אוטונומייםמחשבים
עם זה דרך תווך פיזי
A Computer Network is a collection of autonomous
computers, interconnected through a physical medium
Computer Communication and Distributed Algorithms (Fall 2012-13)
6
Simplified communication model
Source TransmitterTransmission
SystemDestinationReceiver
Workstation ServerModemModem
Public TelephoneNetwork
Computer Communication and Distributed Algorithms (Fall 2012-13)
7
Simplified communication model
Source TransmitterTransmission
SystemDestinationReceiver
Digital bitstream
Digital bitstream
Analogsignal
Analogsignal
Text Text
1 2 3 4 5 6
Inputinformation
m
Input datag(t)
Transmittedsignal
s(t)
Receivedsignal
r(t)
Output datag(t)'
Outputinformation
m'
Computer Communication and Distributed Algorithms (Fall 2012-13)
8
Motivation
Sharing resources.
Reliability. (Backup or Decentralization)
Additional computing capabilities.
Some things are more fun in a group.
Computer Communication and Distributed Algorithms (Fall 2012-13)
9
What do computers need in order to
communicate?
Computer Communication and Distributed Algorithms (Fall 2012-13)
10
Physical medium
Old Standard New Standard
RS-232RS-232
TransmitTransmitReceivReceiv
ee
Computer Communication and Distributed Algorithms (Fall 2012-13)
11
Computer hardware
CPU CPU Bus Cache
Memory PCIController
SCSIController
ISAController
Boards (e.g. Modem)
ISA (Industry Standard Architecture) a protocol for personal computers presented in 1984 which extended XT architecture to 16 Bit. Designed to attach peripherals to the motherboard.
SCSI – Small Computer System Interface. A data transfer protocol, allows faster rates than the computer’s serial and parallel protocols. Another advantage- More than one component could be connected to the same port.
PCI - Peripheral Component Interconnect. A computer channel protocol designed by Intel in order to attach peripheral components to a computer’s motherboard.These components include:•Printed circuits on the motherboard•Additional cards that fit on a socket.
Motherboard – is the main printed circuit of the computer. All the essential components needed to operate the computer are an integral part of the motherboard, or directly connected by different extension slots. These components include the CPU, Memory, Disk drives, etc. Every motherboard is based on a Chipset which manage the bridging of the different components. In addition to the essential components it is possible to connect additional components over extension slots: Display card, Sound cards, Network cards, Modem.
CPU - Central Processing Unit is executing the commands stored in the computer’s memory.
Computer Memory – (Memory) A component or devices that contain digital data used for processing.
Cache – Data storage component. Data is restored fast or cheaply.
Computer Communication and Distributed Algorithms (Fall 2012-13)
12
Two computers communication example
AA BB
Physical mediumPhysical medium
Computer Computer HardwareHardware
Computer Computer HardwareHardware
DataDatapacketpacket
DataDatapacketpacket
Computer to Computer to NetworkNetwork
CommunicationCommunication
Computer to Computer to NetworkNetwork
CommunicationCommunication
Computer to Computer to ComputerComputer
CommunicationCommunication
ApplicatioApplicationn
ApplicationApplicationUser to UserUser to User
CommunicationCommunication
Computer Communication and Distributed Algorithms (Fall
2012-13)
13
Introduction to a post system
Guy Yair
BGU Technion
Admin Admin
A book on ComputerCommunication
Computer Communication and Distributed Algorithms (Fall 2012-13)
14
) כל מעטפה נשלחת בנפרדEach envelope is individually routed.() אין זמן מובטח למשלוחNo time guarantee for delivery .() אין הבטחה לסדר השליחהNo guarantee of delivery in sequence.() ! אין כלל הבטחה למשלוחNo guarantee of delivery at all! .(
דברים יכולים ללכת לאיבוד).Things get lost() ? כיצד אנו יכולים לאשר קבלת משלוחHow can we acknowledge delivery?() שליחה חוזרת Retransmission:(
? אך נקבע מתי לשלוח מחדש ? פסק-זמן)How to determine when to retransmit? Timeout(?. נצטרך העתקים מקומיים של תוכן כל מעטפה)Need local copies of contents of each
envelope.(
כמה זמן צריך להחזיק כל אחד מן העתקים)How long to keep each copy.(
? מה אם האישור נאבד)What if an acknowledgement is lost?( .
Properties of the post system
Computer Communication and Distributed Algorithms (Fall 2012-13)
15
Guy Yair
BGU Technion
Admin Admin
שכבת הישוםApplication
Layer
שכבת התעבורהTransport
Layer
שכבת הרשתNetwork
Layer
שכבת הקוLink Layer
Postal system and the Layer model
Computer Communication and Distributed Algorithms (Fall 2012-13)
16
Guy Yair
cs.bgu.ac.il ie.technion.ac.il
Network Layer
Link Layer
Application Layer
Transport Layer
Linux Win XPHeaderData HeaderData
Data PacketData Packet
Internet introduction
Computer Communication and Distributed Algorithms (Fall 2012-13)
17
כל חבילה נשלחת בנפרד)Each packet is individually routed(. אין זמן מובטח למשלוח).No time guarantee for delivery(
אין הבטחה לסדר השליחה).No guarantee of delivery in sequence( ! אין כלל הבטחה למשלוח)No guarantee of delivery at all(!
דברים יכולים ללכת לאיבוד)Things get lost( . אישור על קבלהAcknowledgements( .() שליחה חוזרתRetransmission(
? אך נקבע מתי לשלוח מחדש ? פסק-זמן)How to determine when to retransmit? Timeout(?. נצטרך העתקים מקומיים של תוכן כל חבילה)Need local copies of contents of each
envelope.(
כמה זמן צריך להחזיק כל אחד מן העתקים)How long to keep each copy.( ? מה אם האישור נאבד)What if an acknowledgement is lost?(
Properties of a communication system (Internet)
Computer Communication and Distributed Algorithms (Fall 2012-13)
18
) אין הבטחה לאמינות (או שלמות) הנתוניםNo guarantee of integrity of data.(
) חבילות יכולה להתחלק למספר חלקיםPackets can be fragmented.(
חבילה יכולה להיות משוכפלת)Packets may be duplicated(.
All those properties and demands are addresed today by the modern networks
and systems.
Internet Properties (cont.)
Computer Communication and Distributed Algorithms (Fall 2012-13)
19
Data transfer Transfer of digital data throughout the
network:מעבר מידע ממערכת מחשב אחת לשניה
)Out of the computer from one system to another(. בדרך כלל עם שמירה על הסדר).Usually in a serial
manner(משתמשים בתווך ספציפי: סיבים אופטים, כבלים, רדיו )Using a specific medium (fiber, cables, radio)( ."אופציה של לעבור דרך "תחנות בינים
) Option of passing through “intermediate stations”.(טעויות אפשריות לפני להגיע ליעד
) Possible errors before reaching to the destination.(Computer Communication and Distributed Algorithms (Fall 2012-13)
20
Telephone Point to Point communication. Direct connection of users to a central
switchboard. Custom design of circuits. If the distance between users is too far, links
and relays are used.
Early communication systems
Computer Communication and Distributed Algorithms (Fall 2012-13)
21
Overview of data networks
Computer Communication and Distributed Algorithms (Fall 2012-13)
22
A series of nodes that exchange information Sharing of the transmission circuits = “Circuit
Switching”. Connecting two edges. Many nodes mean more than one path
between two nodes. A network must choose the apropriate path for
each link demand. Example of a network:
OverviewHardware: How to configure a group of computers as a network LAN - Local Area Network. A network spread over one or
several buildings. MAN – Metropolitan Area Network. A network spread over
a city or a campus (such as a university network). WAN – Wide Area Network. A network that connects a few
LANs and WANs, which are usually far from one another. Internetworks – Connection of many networks.Software: Makes the network – Not the equipment!
The Internet deals with redirecting messages through networks of networks or internetworks. How?
Protocols: Describe how two sides that are active in transferring data exchange data between them.
Computer Communication and Distributed Algorithms (Fall 2012-13)
23
Overview of data networks
Network classification by size
Earth10000Km
Continent1000Km
Country100Km
City10Km
Campus1Km
Building100m
Room10m
System1m
Circuit Board0.1m
LAN
MAN
WAN
Computer Communication and Distributed Algorithms (Fall 2012-13)
25
Services: What the network offers to the communicating nodes.
Interfaces: How a user can utilize network services and make them available.
Two models: OSI – Open System Interconnection, developed by the international standard organization (ISO), and the Internet network model.
Overview of data networks
Computer Communication and Distributed Algorithms (Fall 2012-13)
26
Local area networks (LAN) Local Area Network is a confined computer (or
data) network. LAN are different than other networks by size,
broadcast technology, and by simple topologies. Usually “Shared media” method- A single cable
that connects all the computers. Bus – All the stations are on a shared bus. When
one computer transmits no one else can transmit (Disadvantage).
Typical transmission rates:10Mbps-1Gbps
Computer Communication and Distributed Algorithms (Fall 2012-13)
27
Local area networks (LAN)Token-based A token which is
essentially a packet that goes along the ring.
The Transmitting computer(1) Waits until the token comes and
removes it.(2) Sends the packet to the ring.(3) Waits until the packet returns.(4) Transmits the token again
Why do we need a token?
1
2
3
4
Computer Communication and Distributed Algorithms (Fall 2012-13)28
Wide Area Network (WAN)
WAN covers a large geographic area, such as a city, a province, or a country.
WAN usually connects smaller networks such as LANs.
Router – Connects the LANs into a WAN. A standard transmission rate: 2.5Gbps-10Gbps
Computer Communication and Distributed Algorithms (Fall 2012-13)
29
Internetworks Until now the assumption was that the network is
homogenous and there is a little variation of the equipment.
Hoever, Big networks could only be built by connecting different types of networks to an internet.
Examples: Different types of LANs in the same department
(Bus and Ring). - Connecting LANs to all other networks through
WAN. The WAN is a subnet.- Connecting WANs to all other networks – Internet.
Computer Communication and Distributed Algorithms (Fall 2012-13)
30
Addressing – A method of accessing network resources
IP addresses 132.66.48.37, Refer to a host interface = network number + host number ,
For example 132.66.48 represents the network and 37 represents the specific computer.
Routing – How to find the path from the source to the destination.Packet switching- moving packets between the routers independently.
Information Units – How is the data transmitted
Self-descriptive data: packet = data + metadata (header).
Internet network
Computer Communication and Distributed Algorithms (Fall 2012-13)
31
Protocol Layers Organizing the network structure. A series of steps and structures using
protocols: A protocol is a group of rules and patterns to
regulate the communication between two colleagues.
A protocol is needed for any action that requires a cooperation between all the colleagues.
Examples of communication protocols: ARP – Address Resolution Protocol. Used to convert IP
addresses to MAC addresses. DHCP – Dynamic Host Configuration Protocol. Used to
automatically assign IP addresses for devices that do not have a predefined static IP address.
DNS – Domain Name System. Used to translate literal domain names to IP addresses.
Computer Communication and Distributed Algorithms (Fall 2012-13)
32
Protocol Layers The network that provides many services (i.e.
Web, VoIP, Email, games, Ecommerce, file sharing) needs many protocols.
Some of the services are independent but others rely on others.
A protocol may use another protocol as a step of its execution.
This relationship between the layers is called layering – one protocol layer is layered over another protocol layer.
Computer Communication and Distributed Algorithms (Fall 2012-13)
33
Open protocols and systems A group of protocols is open if:
The details of the protocol are clear and available.
The changes in the protocols are managed by organizations that publish the protocols and its meetings are open to the public
A system that utilizes open protocols is called an open system.
International Organization for Standards (ISO) - Standardizing to create open systems. open system interconnect (OSI)
Layered protocols model has a major impact.
34
ISO OSI reference model Source model
Formally defines a layer, a service etc. Service architecture
Describes the service that each layer provides and the interfaces between the layers.
Protocol architecture A group of protocols that executes the service
architecture. A collection of all the protocols of the
different layers is called – Protocol Stack.
Computer Communication and Distributed Algorithms (Fall 2012-13)
35
Seven Layers Model
Presentation
Application
Session
Transport
Network
Data Link
Physical
Presentation
Application
Session
Transport
Network
Data Link
Physical
Network
Data Link
Physical
End system End systemIntermediate system
Computer Communication and Distributed Algorithms (Fall 2012-13)
36
Physical layer The physical layer defines 4 properties of the physical
connection:1. The mechanical properties - the interface of the communication
device.2. The electric signals that allow data transfer.3. The logical function of the electric signals, and their order of
appearance over the different communication lines in a given time.
4. The protocol that controls the timing of events and their order is defined.
Protocol Examples: 802.11x-WiFi – A family of protocols for wireless LAN. 10Base-T – A physical protocol of the Ethernet. Allow stations to be connected
by twisted pairs wires. Bluetooth – A private wireless protocol in the personal space. Frequency
2.45GHz. Short range low bandwidth. i.e. computer connection to peripherals. DSL – A digital data transmission technology over local phone lines.
37
Data link layer After the physical connections are established, there is a
need to control the data transfer. 1. The link layer directs the data in the network in a reliable and
understandable way to all the communication devices.2. The link layer collects the data packets and orders them into frames.3. The link layer adds bytes and bits to identify each field in the frame.4. Defines a protocol that finds and fixes errors created by the data
transfer. Protocols
Ethernet - Allows sending information without prior notification. Deals with collisions.
Token Ring – Uses a 24 bit token transmitted between computers in the network where only the computer who has it may transmit.
FDDI – Two rings that pass a token in opposite directions. The Main ring is used most of the time. The secondary ring is used when there is a failure in the network.
Computer Communication and Distributed Algorithms (Fall 2012-13)
38
Network layer The network layer allows routing of the data from the source to
the destination. Hides the behavior of the link layer. Provides the addresses needed. Decides which physical route will be used according to the
network condition, service priorities, and other settings. Exists in every node. In the source, the destination and the
routers. Common protocols:
IPv4 – Internet Protocol, or simply IP. A communication protocol used to transfer data without data check or acknowledgement, but it is very fast and efficient. Very common in computer networks, and the Internet.
IPv6 – A protocol used to transfer data based on packages. The 3rd version of the protocol after IPv4
ICMP – A part of a group of protocols of the Internet. Generally created as a result of errors in IP packets, or for routing and diagnostics.
RIP – A routing protocol based on Hop Count in order to make routing decisions.
39
Transport layer The transport layer is responsible for services and optimization
between two systems. This layer provides data transport between the source and the
destination. Responsible of the reliability of the connection and the reliability of the data.
The Transport layer include several protocols that implement the function of the layer in different ways. In addition some decide to implement or not to implement certain functions. Every application (from the upper layer) chooses its appropriate protocol, according to it’s needs.
Common protocols: TCP – Transmission Control Protocol. Provides error control, flow control and
multiplexing of many messages at a time. UDP – User Datagram Protocol. Provides multiplexing of only a few messages at
a time
Computer Communication and Distributed Algorithms (Fall 2012-13)
40
Session layer Supports the connection of two open systems who wishes to
maintain a “session”. This layer manages the dialog between the systems depending
on the transport layer. Every session link requires a transport link. The session layer performs the functions that allow two
applications to connect over the network. I provides security, identification, system login etc. These functions include bi-directional data flow and synchronization.
Over the internet Internet there is no session layer. Protocols:
PPTP – Allows a safe private virtual private network (VPN) over TCP/IP. SSH – Allows a remote access and login. Replaces RSH, rlogin and
telnet. Allows a safe and encrypted communication between two computers over unsecured networks. SSH is working over TCP.
SSL – A protocol that allows safe and encrypted communication between two applications.
41
Presentation layer In charge of the data format created in two open systems and
converting them into a readable content. In charge of the translation and verifying the data transport between
the two systems. For example, if one system is working on ASCII format and the other on EBDIC, the presentation layer must provide the translation of the protocols.
The presentation layer holds the formatting data to ensure a valid and wanted output over the appropriate peripherals. (Screen, Printers, etc.)
The layer is dealing with the mapping of the screen. An application written for IBM terminal needs to reformat the data in order to be displayed on another terminal.
No presentation layer over the internet Protocols:
ASCII – A Code for Information Interchange, in computer memory and files. Unicode – An international standard for presenting text in computer systems.
Defines a code system that includes all active worldwide writing systems, and also common scientific and technical signs.
MIME – Extends Email capabilities by adding these features: Non ASCII text Non text attachments Non ASCII headers Almost all Email sent today uses MIME
42Computer Communication and Distributed Algorithms (Fall 2012-13)
Application layer The upper layer that includes the user
applications. This includes operating the network system, file
management, printing queue, Emails etc. This layer does not provide service to another
layer. Protocols:
HTTP – A protocol used to transfer HTML pages and their objects (Images, sounds, flash etc), over the Internet.
FTP – A file transfer protocol based on TCP.
Computer Communication and Distributed Algorithms (Fall 2012-13)
43
Next:
The physical layer Signal processing basics. Nyquist-Shannon sampling
The relation between data flow and bandwidth.
The maximum transmission rate of a noisy channel.
Wave modulation and coding basics
Computer Communication and Distributed Algorithms (Fall 2012-13)
44