talk1_add.ppt 473KB Jun 23 2011 12:06:42 PM
Computer
Communications
Sunggu Lee
EE Dept., POSTECH
Sep. 7, 2006
Analog and Digital Signals
Analog: real-world
signal
Digital: “digitized” version of original analog signal
- represented as sequence of binary bits
- e.g., 12, 7, 7, 6, 10, 14, 15, 15, …
11000111011101101010111011111111…
Digital Signal Representation
Bit Representation (Logic 0 and 1) in Wireless Communication
Channel
Typically based on electromagnetic (EM) waves
Example methods
Changes in electrical current flow cause EM waves
Sine wave frequencies: high frequency = 1, low frequency = 0
Sine wave phases: 0 degree = 1, 90 degree = 0
Bit Representation (Logic 0 and 1) in Wired Communication Channel
Optical: no light = 0, light = 1
Current: no current = 0, positive current = 1
Voltage
Positive logic: 0 = low voltage, 1 = high voltage
Noise margins, voltage ranges used to permit small variations in input & output
voltage values
LSTTL: for inputs, ‘0’ = 0.0-0.8V and ‘1’ = 2.0-5.0V
for outputs, ‘0’ = 0.0-0.5V and ‘1’ = 2.7-5.0V
Wireless Communication
Communication “medium” (thing through which
the data is communicated) is shared
Each “communication connection” is referred to as a
“channel”
Methods for sharing the communication medium
Time division multiple access (TDMA)
Frequency division multiple access (FDMA)
Code division multiple access (CDMA)
Many different varieties
Example: use a frequency hopping code
Change communication frequencies in a predetermined pattern
TDMA [Agrawal 2006]
FDMA [Agrawal 2006]
CDMA [Agrawal 2006]
Frequency Hopping [Agrawal 2
006]
Binary Codes
Meaning of a sequence of binary bits is dependent on
the interpretation used
Example:
unsigned integer = 104, character = ‘o’
part of a binary program
part of a video or audio data stream
A “service request” command from a client PC
A “service response” reply from a server PC
Other
Example:
111
01101111
01001000 01100101 01101100 01101100 01101
When interpreted as character string Hello
‘H’ = 01001000, ‘e’ = 01100101, ‘l’ = 01101100, …
Packetization of Data
For transmission of a stream of data
bits (message), the message is
typically partitioned into “packets”
A
packet consist of
Packet header (destination, routing info, etc.)
Data payload (the bits of the message)
Check bits (redundant bits used to check for
errors in the received packet)
Communication Protocols
For successful transmission/receipt of a
packet, the transmitter and receiver must
agree on a “communication protocol”
Set
of rules on how the packet is interpreted
How to sample the bits of the packet
Signaling method
Synchronization of the transmitter/receiver
How to determine which parts of the packet are the
packet header (destination info, etc.), data payload,
check bits, etc.
How to interpret the bits of the data payload
Integer, floating-point, character string, JPEG picture, etc.
Computer Communication Models
and Communication Protocol
Suites
Most commonly used reference base
communication model is the Open
Systems Interconnection (OSI) model
Standardized
by the International Organization
for Standardization (ISO)
Most common implementation of the OSI
model is a set of protocols referred to as
the TCP/IP protocol suite (or stack)
TCP
= Transmission Control Protocol
IP = Internet Protocol
Communication Protocols
L7
L6
L5
L4
L3
L2
L1
[Forouzan 2003]
Computer Communication
Example
Send picture image and message to friend
sender
receiver
Microsoft Outlook
Hello!
Netscape Messenger
Hello!
Hello!
system software
system software
Communication
Channel
Layer-by-Layer (OSI Model)
View
Activities Required (Sender
Side)
Edit message and enter “send” MS Outlook Express
Convert into sequence of bits
Tags must be inserted so that original message can be reconstructed
at destination
Encrypt message if necessary for privacy
Compress if necessary
Partition into packets of fixed maximum size
E.g., “string” 01001000 … “JPEG” 110011101010 … “end”
11001100100010 … 101011111100 … 01111110
IP address
Attach header information (Packet ID, destination, checksum, …)
Intersperse with packets from messages created by other
applications
On first link of path,
Partition each packet into fixed-size frames (with headers)
Send each frame out onto the network
Activities Required on
Network
Route each packet to its destination
During each “hop” of the path
Send signals back and forth to coordinate the sending and
receiving of the stream of bits corresponding to a frame
Check each frame for errors
Handshaking
Request retransmission in the case of errors
Arrange received frames into the proper order
Wait for all frames of the packet to be received
Once each packet reaches its destination node, IP address
Store packet in a memory buffer at destination
Send signal to destination CPU to inform it of the arrival of
the new packet
Port Number
Activities at Destination
Node
Receive packets
Check each packet for errors and request retransmission in
the case of errors
Arrange received packets into the proper order
Once all packets have been received, form a complete
message
Decompress if necessary
Decrypt if necessary
Check for errors
Use tags in the bit stream to reconstruct the message
Show message to user using email tool (e.g., MS
Outlook Express)
Network Addresses
IP (Internet Protocol) address
Address used to identify a computing node on the internet
Network layer (L3) address
E.g., 141.223.165.189 (Look up “properties” on “TCP/IP” on “Network”)
MAC (Medium Access Control) address
Address used to identify a LAN card – cannot be changed
Data link layer (L2) address
E.g., abcd1234 (Enter “ipconfig /all” from MS Windows “cmd” window)
Port address
Address used to identify a network interface point for an application pro
g.
Corresponds to a memory buffer
Send a message - write to a memory buffer on a remote computer
Receive a message – read from a memory buffer on the local computer
Example: 39 (for FTP), 3000 (for a user-defined port)
Connection-Oriented and
Connectionless Networking
Connection-oriented networking
Uses a specific network path that is established for the
duration of a connection
Three phases: connection establishment, data transfer,
connection termination
Main advantage: reliable communication
Main implementation method: TCP (transfer control
protocol)
Connectionless networking
Finds a new path for each packet sent
Main advantage: fast communication for short messages
Main implementation method: UDP (user datagram protocol)
Communication Performance
Parameters (1)
Throughput ( 데데데 데데데 )
Actual
number of bits transmitted per second
Note 1: different from latency ( 데데데데 )
Note 2: different from bandwidth ( 데데데 )
Most
important communication performance
parameter
Typical measurement method
Send a data file from a source node to a destination node
Record the time t1 when the first byte of the data is received
Record the time t2 when the last byte of the data is received
Divide amount of data received by (t2 – t1)
Note: Mbps = mega-bits-per-second (not bytes)
Communication Performance
Parameters (2)
Bandwidth
Maximum
number of bits that can be transmitted
per second
Note 1: different from latency ( 데데 데데 )
Note 2: different from throughput ( 데데데 데데데 )
Measures
performance of network only (not the
computer hardware or software)
Typical measurement method
Difficult to measure since effects of small data amounts,
software and hardware at source and destination nodes
must be removed
The “rated” figure stated in the specifications for the
relevant communication protocol is most commonly used
E.g., 11 Mbps for IEEE 802.11b
Communication Performance
Parameters (3)
Latency
Time
required for the first byte of a message to be
transferred from the source to the destination node
Should include software processing time
Typical measurement method
At time t1, source node sends a very small message to
destination node
Destination node receives message and sends it back to
the source node
Source node receives message and records the time t2
One-way communication latency is (t2 – t1) / 2
Why can’t we measure latency directly (record time t3 at
destination and measure latency as t3 – t1)?
Communication Performance
Parameters (4)
Other parameters also sometimes
measured
Example:
Packet loss rate
Number of packets dropped by the network
Most relevant to wireless networks
References
Behrouz A. Forouzan, TCP/IP Protocol
Suite, 2nd Ed., McGraw-Hill, Boston,
2003.
D. P. Agrawal and Q.-A. Zeng, Introdu
ction to Wireless and Mobile System
s, 2nd Ed., Nelson, Toronto, 2006.
Communications
Sunggu Lee
EE Dept., POSTECH
Sep. 7, 2006
Analog and Digital Signals
Analog: real-world
signal
Digital: “digitized” version of original analog signal
- represented as sequence of binary bits
- e.g., 12, 7, 7, 6, 10, 14, 15, 15, …
11000111011101101010111011111111…
Digital Signal Representation
Bit Representation (Logic 0 and 1) in Wireless Communication
Channel
Typically based on electromagnetic (EM) waves
Example methods
Changes in electrical current flow cause EM waves
Sine wave frequencies: high frequency = 1, low frequency = 0
Sine wave phases: 0 degree = 1, 90 degree = 0
Bit Representation (Logic 0 and 1) in Wired Communication Channel
Optical: no light = 0, light = 1
Current: no current = 0, positive current = 1
Voltage
Positive logic: 0 = low voltage, 1 = high voltage
Noise margins, voltage ranges used to permit small variations in input & output
voltage values
LSTTL: for inputs, ‘0’ = 0.0-0.8V and ‘1’ = 2.0-5.0V
for outputs, ‘0’ = 0.0-0.5V and ‘1’ = 2.7-5.0V
Wireless Communication
Communication “medium” (thing through which
the data is communicated) is shared
Each “communication connection” is referred to as a
“channel”
Methods for sharing the communication medium
Time division multiple access (TDMA)
Frequency division multiple access (FDMA)
Code division multiple access (CDMA)
Many different varieties
Example: use a frequency hopping code
Change communication frequencies in a predetermined pattern
TDMA [Agrawal 2006]
FDMA [Agrawal 2006]
CDMA [Agrawal 2006]
Frequency Hopping [Agrawal 2
006]
Binary Codes
Meaning of a sequence of binary bits is dependent on
the interpretation used
Example:
unsigned integer = 104, character = ‘o’
part of a binary program
part of a video or audio data stream
A “service request” command from a client PC
A “service response” reply from a server PC
Other
Example:
111
01101111
01001000 01100101 01101100 01101100 01101
When interpreted as character string Hello
‘H’ = 01001000, ‘e’ = 01100101, ‘l’ = 01101100, …
Packetization of Data
For transmission of a stream of data
bits (message), the message is
typically partitioned into “packets”
A
packet consist of
Packet header (destination, routing info, etc.)
Data payload (the bits of the message)
Check bits (redundant bits used to check for
errors in the received packet)
Communication Protocols
For successful transmission/receipt of a
packet, the transmitter and receiver must
agree on a “communication protocol”
Set
of rules on how the packet is interpreted
How to sample the bits of the packet
Signaling method
Synchronization of the transmitter/receiver
How to determine which parts of the packet are the
packet header (destination info, etc.), data payload,
check bits, etc.
How to interpret the bits of the data payload
Integer, floating-point, character string, JPEG picture, etc.
Computer Communication Models
and Communication Protocol
Suites
Most commonly used reference base
communication model is the Open
Systems Interconnection (OSI) model
Standardized
by the International Organization
for Standardization (ISO)
Most common implementation of the OSI
model is a set of protocols referred to as
the TCP/IP protocol suite (or stack)
TCP
= Transmission Control Protocol
IP = Internet Protocol
Communication Protocols
L7
L6
L5
L4
L3
L2
L1
[Forouzan 2003]
Computer Communication
Example
Send picture image and message to friend
sender
receiver
Microsoft Outlook
Hello!
Netscape Messenger
Hello!
Hello!
system software
system software
Communication
Channel
Layer-by-Layer (OSI Model)
View
Activities Required (Sender
Side)
Edit message and enter “send” MS Outlook Express
Convert into sequence of bits
Tags must be inserted so that original message can be reconstructed
at destination
Encrypt message if necessary for privacy
Compress if necessary
Partition into packets of fixed maximum size
E.g., “string” 01001000 … “JPEG” 110011101010 … “end”
11001100100010 … 101011111100 … 01111110
IP address
Attach header information (Packet ID, destination, checksum, …)
Intersperse with packets from messages created by other
applications
On first link of path,
Partition each packet into fixed-size frames (with headers)
Send each frame out onto the network
Activities Required on
Network
Route each packet to its destination
During each “hop” of the path
Send signals back and forth to coordinate the sending and
receiving of the stream of bits corresponding to a frame
Check each frame for errors
Handshaking
Request retransmission in the case of errors
Arrange received frames into the proper order
Wait for all frames of the packet to be received
Once each packet reaches its destination node, IP address
Store packet in a memory buffer at destination
Send signal to destination CPU to inform it of the arrival of
the new packet
Port Number
Activities at Destination
Node
Receive packets
Check each packet for errors and request retransmission in
the case of errors
Arrange received packets into the proper order
Once all packets have been received, form a complete
message
Decompress if necessary
Decrypt if necessary
Check for errors
Use tags in the bit stream to reconstruct the message
Show message to user using email tool (e.g., MS
Outlook Express)
Network Addresses
IP (Internet Protocol) address
Address used to identify a computing node on the internet
Network layer (L3) address
E.g., 141.223.165.189 (Look up “properties” on “TCP/IP” on “Network”)
MAC (Medium Access Control) address
Address used to identify a LAN card – cannot be changed
Data link layer (L2) address
E.g., abcd1234 (Enter “ipconfig /all” from MS Windows “cmd” window)
Port address
Address used to identify a network interface point for an application pro
g.
Corresponds to a memory buffer
Send a message - write to a memory buffer on a remote computer
Receive a message – read from a memory buffer on the local computer
Example: 39 (for FTP), 3000 (for a user-defined port)
Connection-Oriented and
Connectionless Networking
Connection-oriented networking
Uses a specific network path that is established for the
duration of a connection
Three phases: connection establishment, data transfer,
connection termination
Main advantage: reliable communication
Main implementation method: TCP (transfer control
protocol)
Connectionless networking
Finds a new path for each packet sent
Main advantage: fast communication for short messages
Main implementation method: UDP (user datagram protocol)
Communication Performance
Parameters (1)
Throughput ( 데데데 데데데 )
Actual
number of bits transmitted per second
Note 1: different from latency ( 데데데데 )
Note 2: different from bandwidth ( 데데데 )
Most
important communication performance
parameter
Typical measurement method
Send a data file from a source node to a destination node
Record the time t1 when the first byte of the data is received
Record the time t2 when the last byte of the data is received
Divide amount of data received by (t2 – t1)
Note: Mbps = mega-bits-per-second (not bytes)
Communication Performance
Parameters (2)
Bandwidth
Maximum
number of bits that can be transmitted
per second
Note 1: different from latency ( 데데 데데 )
Note 2: different from throughput ( 데데데 데데데 )
Measures
performance of network only (not the
computer hardware or software)
Typical measurement method
Difficult to measure since effects of small data amounts,
software and hardware at source and destination nodes
must be removed
The “rated” figure stated in the specifications for the
relevant communication protocol is most commonly used
E.g., 11 Mbps for IEEE 802.11b
Communication Performance
Parameters (3)
Latency
Time
required for the first byte of a message to be
transferred from the source to the destination node
Should include software processing time
Typical measurement method
At time t1, source node sends a very small message to
destination node
Destination node receives message and sends it back to
the source node
Source node receives message and records the time t2
One-way communication latency is (t2 – t1) / 2
Why can’t we measure latency directly (record time t3 at
destination and measure latency as t3 – t1)?
Communication Performance
Parameters (4)
Other parameters also sometimes
measured
Example:
Packet loss rate
Number of packets dropped by the network
Most relevant to wireless networks
References
Behrouz A. Forouzan, TCP/IP Protocol
Suite, 2nd Ed., McGraw-Hill, Boston,
2003.
D. P. Agrawal and Q.-A. Zeng, Introdu
ction to Wireless and Mobile System
s, 2nd Ed., Nelson, Toronto, 2006.