Title: Basic Communications Protocols
1Basic Communications Protocols
- Workshop on QoS
- Hanoch Levy
- Feb 2004
2The objective A talk to B , C talk to D, best
performance
B
A
D
C
3Communications and Standards
- Communication networks must be based on
standards!!! - Much more than any software!!!
- The structure of standards must be modular
- Thus a STANDARD and MODULAR set of communications
rules must be defined.
4The reference Model
- A standard framework for describing standard
approached for delivering data over a network. - Placed in different locations
- Want to pass data of some type, from one to
another. - Want this to be done good/best/ASAP.
- Want to do it with certain minimal quality
requirements.
5The method A layered Model
- Each layer is responsible for certain tasks
- Each layer goes across the network
- Each software piece talks horizontally with its
peer piece (on another hardware) - Each software piece talks upward and downward to
its parent and sibling pieces (on same hardware).
6The principle of a layered model
- Each layer element
- Talk to its peer element
- Carries traffic for its parent
- Deliver traffic through its child
7The layers Layer 1 - Physical
- Deals with the physics of the media
- Attaches to the iron and understands the iron
(cooper, fiber, ether). - Translates bits to electrical/light/radio signals
and vice versa - Called Modem (Modulator and Demodulator)
- Is responsible of transferring bits from one side
to the other. - When B receives a bit ? transfers it to B
- Forms a BIT PIPE
8Physical Layer a bit pipe
A bit pipe
C
C
bit
B
B
Physical medium (fiber, cooper, radio, pigeon)
A
A
9Link Layer (2)
Completed 26/3/04
- Assures transferring of a packet in reliable way
across a link . - Uses the bit-pipe.
- Uses mechanism to recover from problems
- If packet does not arrive or arrive bad
- Add error detection on packet.
- E.g. parity bits
- Add packet numbers.
- Add acks (to acknowledge receipt)
- Retransmit if necessary.
10Link Layer (layer 2) a reliable packet pipe
A packet pipe
D
D
packet
C
C
Physical layer
B
B
11Network Layer (3)
- Assures transferring of a packet in reliable way
across THE NETWORK . - Introduces network mechanisms Routing,
addressing - Uses the link layer to transfer across a link.
12Network Layer (layer 3) a reliable packet
network pipe
A packet pipe
E
E
packet
D
D
Link layer
C
C
C
13A view from above (network layer)
14InterNetwork Layer (3.5)
- Arranges the delivery of a packet across many
networks
15Internet Layer (3.5)
16Transport Layer (layer 4) a reliable
communications end to end
A packet pipe
Data piece
F
F
E
E
Link layer
D
D
17Issues at Transport layer
- Reliable communications
- Guarantees that a packet does arrive at
destination (if does not arrive requires
resend). - Acking
- Numbering
- Flow Control
- Can you send at your will?
18Issues at Transport layer
- Can you send at your will?
- If destination is slow destination will have its
buffer full and performance degradation.
Efficiency ? be careful - If route is slow sending over-traffic will just
congest the network. Politeness ? slow down.
19Principles of Flow control
- Use acks for each packet (receiver sends ack for
each packet) - Sender uses a WINDOW (cannot send more than a
window full of packets). If j did not arrive
can send at most j-1W. - Advanced windows make the window size depends on
speed of line. - If things go OK increase W.
- If things go slow decrease W.
20Application Layer (5)
- Use the transport layer to ship the application.
21Internet
- Internet Layer Internet Protocol (IP)
- Takes care of passing a packet across the network
to the destination (routing across networks). - Transport Control Protocol (TCP) Layer 5
protocol. - Above IP.
- Creates a reliable communications path end to
end.
22Internet
- UDP (Unspecified Data Protocol)
- Parallel to TCP (that is, above IP)
- Good news Provides no flow control mechanism!.
- Bad News Provides no guaranteed delivery!
- Users responsibility for the packets.
- Network does not control the flow of packets.
- Like post service.
23Internet Applications FTP
- FTP File transfer protocol
- Over TCP
- Want to transfer file x from A to B
- A opens a TCP connection to B.
- A pushes the file, piece by piece into the TCP
connection. - What does the FTP protocol needs to take care of
- Name the file.
- Give list of files.
- Get starting at position y, .
24Internet Applications HTTP
- HTTP Hyper Text transfer protocol
- Over TCP
- Used by Web browsers to get files from Web
servers - A wants to get set of documents x, y, z from B
- A opens a TCP connection(s) to B.
- A requests the documents (one by one, or in
parallel) from B. - B sends the files over the connections.
- HTTP is used for
- Naming the document
- GET Command
- Error codes,.
25Internet Applications RTP
- RTP Real Time Protocol
- Used to transfer pieces of data at real time over
the net. - Over UDP!!
- Used by real time applications (voice, video) to
transfer end-to-end. - Protocol defines the form of the packets.
- Protocol defines the interaction (almost non is
set) between sender and receiver.
26Stack of Protocols
ftp
http