|
Host-to-Host Layer
This layer shields the upper layers from the process of sending data. Also
provides an end-to-end connection between two devices during communication by
performing sequencing, acknowledgments, checksums, and flow control.
Applications using services at this layer can use two different protocols: TCP
and UDP.
Protocols at the Host-to-Host Layer are:
TCP (Transmission Control Protocol)
TCP provides a connection-oriented, reliable services to the applications
that use its services.
Main Functions of TCP
- Segments application layer data
stream--
- TCP accepts data from applications and segments it into a desirable size for
transmission between itself and the remote devices. The segment size is
determined while TCP is negotiating the connection between the two devices.
Either device can dictate the segment size.
- Provides acknowledgment times--
- TCP maintains timers to identify when packets have taken too long to get to
their destination. When an acknowledgment is not received for a packet and the
timer expires, TCP will resend the packet to the destination.
- Enables sequence number checking--
- TCP/IP uses sequence numbers to ensure that all packets sent by an
application on one device are read in the correct order by an application on
another device. The packets might not be received at the transport layer in the
correct order, but TCP sequences them in their original order before passing
them to the application layer.
- Provides buffer management--
- Any time two devices are communicating, the possibility exists that one
device can send data faster than the other can accept it. If this happens, the
receiving device puts the extra packets into a buffer to be read at the first
chance it gets. When this data overflow persists, however, the buffer is
eventually filled and packets begin to drop. TCP performs some preventive
maintenance called flow control to avoid the problem.
- Initiates connections with 3-way
handshake--
- TCP uses the concept of the three-way handshake to initiate a connection
between two devices. A TCP connection begins with a device sending a request to
synchronize sequence numbers (a SYN packet) and initiate a connection. The other
device receives the message and responds with a SYN message and the sequence
number increased by one. The first device responds by sending an acknowledgment
message (an ACK) to the second device, indicating that the device received the
sequence number it expected.
- Performs error and duplication
checking--
- TCP uses a checksum to identify packets that have changed during transport.
If a device receives a packet with a bad checksum, it drops the packet and does
not send an acknowledgment for the packet. So the sending device will resend the
packet. Any time TCP receives a duplicate packet it will drop the duplicate.
- Performs acknowledgment windowing--
- Any time a TCP device sends data to another device, it must wait for the
acknowledgment that this data was received, To increase the bandwidth
utilization, TCP can change the window size. Whatever the window size is
negotiated to be, acknowledgments will only be sent after that many packets have
been received at the receiving device. TCP sets the window size dynamically
during a connection, allowing either device involved in the communication to
slow down the sending data rate based on the other devices capacity. This
process is known as sliding window because of TCP's ability to change the
window size dynamically.
TCP Overview
Before data is sent, the transmitting host contacts the receiving host to set
up a connection known as a virtual circuit. This makes TCP
connection-oriented. During the handshake the two hosts agree upon the
amount of information to be sent before an acknowledgment is needed (Windowing).
TCP takes the large blocks of data from the upper layers and breaks them up into
segments that it numbers and sequences. TCP will the pass the segments to the
network layer, which will route them through the Internetwork. The receiving TCP
can put the segments back into order. After packets are sent, TCP waits for an
acknowledgment from the receiving end of the virtual circuit. If no
acknowledgment is received then the sending host will retransmit the segment.
| TCP Header Information |
Source Port Number
16 bits
(Number of calling port) |
Destination Port
Number
16 bits
(Number of called port) |
Sequence Number
32 bits
(Number to ensure proper sequence of data.) |
Acknowledgment Number
32-bits
(Identifies next segment expected) |
Header Length
4 bits
(Number of 32 bit words in header) |
Reserved
6 bits
(Always 0) |
Code bits
6 bits
(Identifies type of segment, setup/termination of session) |
Window size
16 bits
(Number of octets the device is willing to accept) |
TCP Checksum
16 bits
(Used to ensure data integrity) |
Urgent Pointer
16 bits
(Indicates end of urgent data) |
Options
0 or 32 bits
(Identifies maximum segment size) |
Data
|
UDP (User Datagram Protocol)
UDP transports information that doesn't require reliable delivery; therefore
it can have less overhead than TCP as no sequencing or acknowledgments are used.
NFS and SNMP use UDP for their sessions, the applications have their own methods
to ensure reliability. UDP receives blocks of information from the upper layers,
which it breaks into segments. It gives each segment a number, sends it, and
then forgets about it. No acknowledgments, no virtual circuits,
connectionless protocol.
| UDP Header Format |
Source Port Number
16 bits
(Number of calling port) |
Destination Port Number
16 bits
(Number of called port) |
UDP Length
16 bits
(Length of UDP in bytes) |
UDP Checksum
16 bits
(Used to ensure data integrity) |
Data
|
Differences between TCP and UDP
|
Differences Between TCP and UDP |
| TCP |
UDP |
| Sequenced |
Unsequenced |
| Reliable -sequence numbers, acknowledgments, and 3-way handshake |
Unreliable -best effort only |
| Connection Oriented |
Connectionless |
| Virtual Circuits |
Low Overhead |
| Checksum for Error Checking |
Checksum for Error Checking |
| Uses buffer management to avoid overflow, uses sliding window to maximize
bandwidth efficiency |
No flow control |
| Assigns datagram size dynamically for efficiency |
Every datagram segment is the same size |
TCP and UDP Port Numbers
TCP and UDP use port numbers to communicate with the upper layers. Port
numbers keep track of different sessions across the network. The source port
will be above 1024 (unprivileged). 1023 and below (privileged) are known as well
known ports and are assigned to common protocols. TCP and upper layer don't use
hardware (MAC) and logical (IP) addresses to see the host's address; instead
they use port numbers.
|
Call Now : 800-519-
2267
|
Testimonials
|
If you're serious about getting certified,
this is the place to go. Definitely worth
their competitive price. Excellent
instructors, making it possible for anyone
to learn no matter what your level of
experience or knowledge.
Michael Doty
|
 |
Vibrant
offers
MCITP MCSE
certification
training
boot camp
for $5400
all inclusive,
instructor
led at
California
and
Baltimore.
Ref1
:
Ref2
:
link
:
resources
:
Tcp/ip
MCITP MCSE CCNA CCNP Boot Camp Schedule by Vibrant
boot camps
MCITP MCSE Boot Camp Proven
MCITP MCSE Boot camp Training
for MCITP MCSE Certification Fast
MCITP
MCSE CCNA CCNP Boot Camp Schedule by
Vibrant boot camps
MCITP MCSE Boot Camp - Proven Boot camp
for MCITP MCSE at Baltimore, Maryland
MCITP MCSE Boot Camp Payment Gateway to get
MCITP MCSE
Certification Fast!
CCNA 801 Boot Camp by Vibrant boot camps,
join MCITP MCSE camps
CCNA Boot Camp by Vibrant boot camps,
join MCITP MCSE camps
CCNP Boot Camp by Vibrant boot camps,
join CCNP camps
MCITP
MCSE Boot Camp compare Vibrant boot
camps, join MCITP MCSE camps
Comptia Security+ Boot Camp by
Vibrant boot camps, join MCITP MCSE camps
MCITP MCSE Boot Camp contact Vibrant boot camps,
join MCITP MCSE camps
MCITP MCSE Boot Camp course fees Vibrant boot
camps, join MCITP MCSE camps
MCITP MCSE Boot Camp FAQ by Vibrant boot camps,
join MCITP MCSE camps
MCITP MCSE Boot Camp location by Vibrant boot
camps, join MCITP MCSE camps
MCITP MCSE Boot Camp location by Vibrant boot
camps, join MCITP MCSE camps
MCITP
MCSE Boot Camp MCITP MCSE Certification also
MCITP MCSE Training Boot Camp
MCITP
MCSE Boot Camp by Vibrant boot
camps, join MCITP MCSE camps, MCITP MCSE Cert
MCITP
MCSE Boot Camp by Vibrant boot
camps, join MCITP MCSE camps
MCITP
MCSE Boot Camp by Vibrant boot
camps, join MCITP MCSE camps
MCITP
MCSE Boot Camp by Vibrant boot
camps, join MCITP MCSE camps
MCITP MCSE Security Boot Camp MCITP MCSE
14days all_incl MCITP MCSE Certifiation boot camp
MCITP MCSE Security Boot Camp by
Vibrant boot camps, join MCITP MCSE camps
MCITP MCSE Security Boot Camp by
Vibrant boot camps, join MCITP MCSE camps
MCITP MCSE Security Boot Camp by
Vibrant boot camps, join MCITP MCSE camps
MCITP MCSE Security Boot Camp by
Vibrant boot camps, join MCITP MCSE camps
MCITP MCSE Boot Camp Payment Gateway to get
MCITP MCSE
Certification Fast!
MCITP MCSE Boot Camp Refunds
MCITP
MCSE CCNA CCNP Boot Camp Register by
Vibrant boot camps
MCITP
MCSE Boot Camp Testimonials by Vibrant
boot camps
MCITP MCSE Boot Camp Payment Gateway to get
MCITP MCSE
Certification Fast!
MCITP
MCSE Boot Camp MCITP MCSE Certification
also MCITP MCSE Training Boot Camp
Microsoft Vista
Certification Boot Camp for Vista training boot camps
MCITP MCSE CCNA CCNP Boot Camp Register by Vibrant
boot camps
MCITP
MCSE Boot Camp all inclusive bootcamp
Vibrant boot camps, join MCITP MCSE camps
MCITP
MCSE CCNA CCNP Boot Camp Register by
Vibrant boot camps
|