Download Introduction

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Distributed firewall wikipedia , lookup

Net neutrality law wikipedia , lookup

Wake-on-LAN wikipedia , lookup

CAN bus wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

Net bias wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Computer network wikipedia , lookup

Network tap wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

Airborne Networking wikipedia , lookup

Deep packet inspection wikipedia , lookup

IEEE 1355 wikipedia , lookup

Internet protocol suite wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

UniPro protocol stack wikipedia , lookup

Peer-to-peer wikipedia , lookup

Transcript
Sadna Advanced Internet
applications and Systems:
Peer to Peer
Hanoch Levy & Hillel Avni
(hanoch at cs.tau.ac.il, [email protected])
Some slides adopted from Y. Mansour, Y. Afek
25.05.2017
H. Levy, Sadna P2P 2011
1
Course Information
Lectures: Tuesday
Shreiber 007
Teaching Assistant: Hillel Avni
Web site: http://www.cs.tau.ac.il/~hanoch
Search for sadna
Resources: Articles: Web, Us
Framework : Hillel Avni
Supporting Books (computer networks – little P2P):
1. An Engineering Approach to Computer Networking / Keshav
2. Computer Networks / Tanenbaum
3. Data Networks / Bertsekas and Gallager
25.05.2017
H. Levy, Sadna P2P 2010
2/60
What is P2P + Questions
1. An “unnatural” way to ship traffic in a
network:
• Pass the traffic between the clients
• Instead of: from server to clients
2. “Against nature laws”…
3. Rose due to “legal reasons”..
4. Turned out to have positive technical
properties
5. Can it survive
6. Can it operate in a decent environment
25.05.2017
H. Levy, Sadna P2P 2010
3/60
Peer to Peer


“Historical” Internet : send
data from A to K.
Client-server model:



25.05.2017
A = server = data source
K = client data consumer
If C wants too – get from
A (unicast or broadcast)
H. Levy, Sadna P2P 2010
4/60
Peer to Peer



25.05.2017
A (source) sends to K.
K (client) may become
now a server.
K sends to C (another
client).
H. Levy, Sadna P2P 2010
5/60
Course Objective
1. Get to understand very well P2P
systems – with application to Video
2. Understand advantages and
limitations
3. Understand “efficiency” and scheduling
4. Hands-on experience
5. Gate for Master thesis? ….
25.05.2017
H. Levy, Sadna P2P 2010
6/60
Structure + Grades
Structure:
1) A few general lectures by team.
2) Work on your own with team guidance.
3) 3 deadlines for turning in material
• Grade:
• Based on what is turned in
• Quality:
• How good the program performs
• How good the students understand the
problem/solution
25.05.2017
H. Levy, Sadna P2P 2010
7/60
Motivation

Last 10-15 years: communications revolution



Internet + Computer communications
Is a key factor of the Information revolution
Implications




A drastic change of some aspects of life
Revolution is affected by life
Technology drives applications
Applications drive technology
25.05.2017
H. Levy, Sadna P2P 2010
8/60
Motivation (cont)


Applications / technology / research 
rapidly change over time
If want to stay in frontier:


=> Research material
=> Course material
25.05.2017
very dynamic
very dynamic
H. Levy, Sadna P2P 2010
9/60
Objectives

Computer Networking course: Internet infra-structure

1 Introduction and Layering
2 Physical Layer, Data Link Layer, MAC Protocols
3 Hubs, Bridges, SwitchesData Link Layer
4 Switching UnitsSTP, Switching Fabric
5 Scheduling: Buffer Management Scheduling, WFQ example
6 Network Layer: RoutingRouting
7 Reliable Data TransferIP
8 End to End ProtocolsARQ
10 Flow Control, Congestion ControlTCP flow & congestion control
11 Network SecurityNetwork Sniffing (no slides)
12 DNS, HTTPTCP (state chart)
13 DDoS

ALL – operations of network of networks.











25.05.2017
H. Levy, Sadna P2P 2010
10/60
Objectives (2)

Advanced Material – network development
following technology

Peer to Peer (P2P): Bittorent, Skype



Songs /movies / video-on-demand/video online
Distributed nets (serve the user)
Semi organized nets :


25.05.2017
serve the provider (e.g. video provider, Youtube?)
Serve Internet Service provider (ISP=Bezeq Intl.)
H. Levy, Sadna P2P 2010
11/60
Internet Physical Infrastructure
Residential access




Cable
Fiber
DSL
Wireless
ISP
Backbone ISP
ISP
 The Internet is a network
Campus access,
e.g.,


Ethernet
Wireless
25.05.2017
of networks
 Each individually
administrated network is
called an Autonomous
System
(AS)
H. Levy,
Sadna P2P
2010
12/60
12
Data Networks




Set of interconnected nodes exchange information
sharing of the transmission circuits= "switching".
many links allow more than one path between every
2 nodes.
network must select an appropriate path for each
required connection.
25.05.2017
H. Levy, Sadna P2P 2010
13/60
Real Network
25.05.2017
H. Levy, Sadna P2P 2010
14/60
Layers:
Person delivery of parcel
Post office counter handling
Ground transfer: loading on trucks
Peer entities
Airport transfer: loading on airplane
Airplane routing from source to
destination
each layer implements a service
via its own internal-layer actions

relying on services H.
provided
by layer below
Levy, Sadna P2P 2010

25.05.2017
15/60
The seven Layers
There are only 5 !!
Application
Presentation
Session
Application
Transport
Network
Data Link
Network
Data Link
Physical
Physical
End system
25.05.2017
Intermediate
system
H. Levy, Sadna P2P 2010
Application
Presentation
Session
Transport
Network
Data Link
Physical
End system
17/60
The seven Layers - protocol stack
data
Application
Presentation
Session
AH
PH
Network
Data Link
Physical
Physical
Session
data
SH
Transport
Network
Data Link
TH
data
data
data
NH
data
DH+data+DT
bits
Application
Presentation
Session
Transport
Network
Data Link
Physical
and presentation layers are not so important, and are often ignored
18/60
25.05.2017
H. Levy, Sadna P2P 2010
‫עיקרון השכבות‬
Source
Application
‫ מתקבלת הודעה‬X ‫בשכבה‬
Destination
‫זהה להודעה ששכבה‬
Application
‫ מסרה בצד המקור‬X
Identical message
Transport
Transport
Identical message
Network
Identical message
Data-Link
Network
Data-Link
Network
25.05.2017
H. Levy, Sadna P2P 2010
19/60
Internet protocol stack





application: supporting network applications
 ftp, smtp, http
transport: host-host data transfer
 tcp, udp
network: routing of datagrams from source
to destination
 ip, routing protocols
link: data transfer between neighboring
network elements
 ppp, ethernet
physical:
bits “on the wire”
25.05.2017
H. Levy, Sadna P2P 2010
application
transport
network
link
physical
20/60
Protocol layering and data
M
Ht M
Hn Ht M
Hl Hn Ht M
source
destination
application
transport
network
Link
physical
application
transport
network
Link
physical
25.05.2017
H. Levy, Sadna P2P 2010
M
message
Ht M
Hn Ht M
Hl Hn Ht M
segment
datagram
frame
21/60
Physical layer


Moves bits between physically connected
end-systems
Standard prescribes




L1
coding scheme to represent a bit
shapes and sizes of connectors
bit-level synchronization
Internet

technology to move bits on a wire, wireless link, satellite
channel etc.
25.05.2017
H. Levy, Sadna P2P 2010
22/60
Datalink layer


L2
(Reliable) communication over a single link.
Introduces the notion of a frame

set of bits that belong together

Idle markers tell us that a link is not carrying a

Begin and end markers delimit a frame

Internet
frame



a variety of datalink layer protocols
most common is Ethernet
others are FDDI, SONET, HDLC
25.05.2017
H. Levy, Sadna P2P 2010
23/60
Datalink layer (contd.)




Ethernet (broadcast link)

end-system must receive only bits meant for it

need datalink-layer address

also need to decide who gets to speak next

these functions are provided by Medium ACcess sublayer (MAC)
Datalink layer protocols are the first layer of software
Very dependent on underlying physical link properties
Usually bundle both physical and datalink in hardware.
25.05.2017
H. Levy, Sadna P2P 2010
24/60
Network layer






L3
Carries data from source to destination.
Logically concatenates a set of links to form the
abstraction of an end-to-end link
Allows an end-system to communicate with any other
end-system by computing a route between them
Hides individual behavior of datalink layer
Provides unique network-wide addresses
Found both in end-systems and in intermediate systems
25.05.2017
H. Levy, Sadna P2P 2010
25/60
Network layer (contd.)

Internet







network layer is provided by Internet Protocol (IP)
found in all end-systems and intermediate systems
provides abstraction of end-to-end link
segmentation and reassembly
packet-forwarding, routing, scheduling
unique IP addresses
can be layered over anything, but only best-effort
service
25.05.2017
H. Levy, Sadna P2P 2010
26/60
Network layer (contd.)


At end-systems

primarily hides details of datalink layer

segments and reassemble

detects errors
At intermediate systems
 participates in routing protocol to create routing
tables
 responsible for forwarding packets
 schedules the transmission order of packets
 chooses which packets to drop
25.05.2017
H. Levy, Sadna P2P 2010
27/60
Transport layer


L4
Reliable end-to-end communication.
creates the abstraction of an error-controlled,
flow-controlled and multiplexed end-to-end link
(Network layer provides only a ‘raw’ end-to-end service)

Some transport layers provide fewer services
e.g. simple error detection, no flow control, and no retransmission


Internet
TCP provides error control, flow control, multiplexing

UDP provides only multiplexing

25.05.2017
H. Levy, Sadna P2P 2010
28/60
Transport layer (contd.)

Error control



Flow control


GOAL: message will reach destination despite packet loss,
corruption and duplication
ACTIONS: retransmit lost packets; detect, discard, and
retransmit corrupted packets; detect and discard duplicated
packets
match transmission rate to rate currently sustainable on the path
to destination, and at the destination itself
Multiplexes multiple applications to the same
end-to-end connection
adds an application-specific identifier (port number) so that
receiving end-system can hand in incoming packet to the correct
application
29/60
25.05.2017
H. Levy, Sadna P2P 2010

Session layer



Not common
Provides full-duplex service, expedited data
delivery, and session synchronization
Internet

doesn’t have a standard session layer
25.05.2017
H. Levy, Sadna P2P 2010
30/60
Session layer (cont.)

Duplex


Expedited data delivery


if transport layer is simplex, concatenates two transport
endpoints together
allows some messages to skip ahead in end-system queues,
by using a separate low-delay transport layer endpoint
Synchronization

allows users to place marks in data stream and to roll back
to a prespecified mark
25.05.2017
H. Levy, Sadna P2P 2010
31/60
Presentation layer


Usually ad hoc
Touches the application data
(Unlike other layers which deal with headers)

Hides data representation differences between
applications



characters (ASCII, unicode, EBCDIC.)
Can also encrypt data
Internet
no standard presentation layer
 only defines network byte order for 2- and 4-byte
integers
32/60
25.05.2017
H. Levy, Sadna P2P 2010

Application layer


The set of applications that use the network
Doesn’t provide services to any other layer
25.05.2017
H. Levy, Sadna P2P 2010
33/60
‫עיקרון השכבות‬
Destination
Source
3 ‫אפליק‬
2 ‫אפליק‬
UDP
1 ‫אפליק‬
TCP
Transport
Network (IPv4)
Modem
Ethernet
Application
Network
WiFi
Data-Link
Network
25.05.2017
H. Levy, Sadna P2P 2010
34/60
‫עיקרון השכבות‬
Destination
Source
3 ‫אפליק‬
2 ‫אפליק‬
UDP
1 ‫אפליק‬
TCP
2 ‫אפליק‬
UDP
Network (IPv4)
Modem Ethernet
3 ‫אפליק‬
1
TCP
Network (IPv4)
WiFi
Modem
Ethernet
WiFi
Network
25.05.2017
H. Levy, Sadna P2P 2010
35/60
Peer to Peer


“Historical” Internet : send
data from A to K.
Client-server model:



25.05.2017
A = server = data source
K = client data consumer
If C wants too – get from
A (unicast or broadcast)
H. Levy, Sadna P2P 2010
36/60
Peer to Peer



25.05.2017
A (source) sends to K.
K (client) may become
now a server.
K sends to C (another
client).
H. Levy, Sadna P2P 2010
37/60
Peer to Peer – WHY??


Legal (this is how it started…)
Broadcast is not really implemented






A is bottleneck
Resource Utilization: K is idle X%
(95?)of the day


25.05.2017
If implemented – not easy
Need at intermediate routers to keep state
of conversation
For each packet to memorize who got it.
Large overhead when traffic speed is high
Communications (costs!!)
CPU
H. Levy, Sadna P2P 2010
38/60
Peer to Peer – WHY??

Scalability



25.05.2017
Can reach N clients at very low cost;
By doubling the load on each recipient
(which needs to become server now)  can
reduce the server load from N to 1.
The network traffic is less than doubled.
H. Levy, Sadna P2P 2010
39/60